TPTP Problem File: ITP217^3.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : ITP217^3 : TPTP v8.2.0. Released v8.1.0.
% Domain   : Interactive Theorem Proving
% Problem  : Sledgehammer problem Time_Reasoning 00330_012302
% Version  : [Des22] axioms.
% English  :

% Refs     : [BH+15] Blanchette et al. (2015), Mining the Archive of Formal
%          : [Des22] Desharnais (2022), Email to Geoff Sutcliffe
% Source   : [Des22]
% Names    : 0029_Time_Reasoning_00330_012302 [Des22]

% Status   : Theorem
% Rating   : 0.90 v8.2.0, 1.00 v8.1.0
% Syntax   : Number of formulae    : 6903 (3552 unt; 795 typ;   0 def)
%            Number of atoms       : 15461 (6666 equ;   0 cnn)
%            Maximal formula atoms :   48 (   2 avg)
%            Number of connectives : 53271 (1326   ~; 301   |; 740   &;45698   @)
%                                         (   0 <=>;5206  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   29 (   5 avg)
%            Number of types       :   55 (  54 usr)
%            Number of type conns  : 2845 (2845   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  744 ( 741 usr;  42 con; 0-8 aty)
%            Number of variables   : 14310 (1438   ^;12595   !; 277   ?;14310   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            from the van Emde Boas Trees session in the Archive of Formal
%            proofs - 
%            www.isa-afp.org/browser_info/current/AFP/Van_Emde_Boas_Trees
%            2022-02-17 16:31:57.438
%------------------------------------------------------------------------------
% Could-be-implicit typings (54)
thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J,type,
    produc6756470014200349799atural: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J_J,type,
    option8956607266484857688it_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    set_Pr8693737435421807431at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    produc8664842809031399944it_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J,type,
    produc5835291356934675326atural: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc859450856879609959at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J,type,
    produc6653097349344004940it_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_J,type,
    set_se6260736226359567993nt_int: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    produc7822875418678951345atural: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc8923325533196201883nteger: $tType ).

thf(ty_n_t__Filter__Ofilter_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    filter1242075044329608583at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    set_Pr1261947904930325089at_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    set_Pr958786334691620121nt_int: $tType ).

thf(ty_n_t__Heap____Time____Monad__OHeap_It__Heap__Oarray_It__Nat__Onat_J_J,type,
    heap_T3836121109492952855ay_nat: $tType ).

thf(ty_n_t__Heap____Time____Monad__OHeap_It__Heap__Oarray_It__Int__Oint_J_J,type,
    heap_T1346037964561226099ay_int: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_Eo_J,type,
    produc6271795597528267376eger_o: $tType ).

thf(ty_n_t__Heap____Time____Monad__OHeap_It__Product____Type__Ounit_J,type,
    heap_T5738788834812785303t_unit: $tType ).

thf(ty_n_t__Heap____Time____Monad__OHeap_It__Heap__Oarray_I_Eo_J_J,type,
    heap_T5660665574680485309rray_o: $tType ).

thf(ty_n_t__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J,type,
    heap_e7401611519738050253t_unit: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Num__Onum_Mt__Num__Onum_J,type,
    product_prod_num_num: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Num__Onum_J,type,
    product_prod_nat_num: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    product_prod_nat_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    product_prod_int_int: $tType ).

thf(ty_n_t__Filter__Ofilter_It__Set__Oset_It__Nat__Onat_J_J,type,
    filter_set_nat: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
    set_list_nat: $tType ).

thf(ty_n_t__List__Olist_It__Code____Numeral__Ointeger_J,type,
    list_Code_integer: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    set_set_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Code____Numeral__Ointeger_J,type,
    set_Code_integer: $tType ).

thf(ty_n_t__Heap__Oarray_It__Product____Type__Ounit_J,type,
    array_Product_unit: $tType ).

thf(ty_n_t__Heap__Oref_It__Product____Type__Ounit_J,type,
    ref_Product_unit: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Ounit_J,type,
    set_Product_unit: $tType ).

thf(ty_n_t__Heap____Time____Monad__OHeap_Itf__a_J,type,
    heap_Time_Heap_a: $tType ).

thf(ty_n_t__Multiset__Omultiset_It__Nat__Onat_J,type,
    multiset_nat: $tType ).

thf(ty_n_t__Option__Ooption_It__Num__Onum_J,type,
    option_num: $tType ).

thf(ty_n_t__List__Olist_It__String__Ochar_J,type,
    list_char: $tType ).

thf(ty_n_t__Filter__Ofilter_It__Nat__Onat_J,type,
    filter_nat: $tType ).

thf(ty_n_t__Set__Oset_It__String__Ochar_J,type,
    set_char: $tType ).

thf(ty_n_t__List__Olist_It__Rat__Orat_J,type,
    list_rat: $tType ).

thf(ty_n_t__List__Olist_It__Num__Onum_J,type,
    list_num: $tType ).

thf(ty_n_t__List__Olist_It__Nat__Onat_J,type,
    list_nat: $tType ).

thf(ty_n_t__List__Olist_It__Int__Oint_J,type,
    list_int: $tType ).

thf(ty_n_t__Set__Oset_It__Rat__Orat_J,type,
    set_rat: $tType ).

thf(ty_n_t__Set__Oset_It__Nat__Onat_J,type,
    set_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Int__Oint_J,type,
    set_int: $tType ).

thf(ty_n_t__Code____Numeral__Onatural,type,
    code_natural: $tType ).

thf(ty_n_t__Code____Numeral__Ointeger,type,
    code_integer: $tType ).

thf(ty_n_t__Product____Type__Ounit,type,
    product_unit: $tType ).

thf(ty_n_t__List__Olist_I_Eo_J,type,
    list_o: $tType ).

thf(ty_n_t__String__Ochar,type,
    char: $tType ).

thf(ty_n_t__Rat__Orat,type,
    rat: $tType ).

thf(ty_n_t__Num__Onum,type,
    num: $tType ).

thf(ty_n_t__Nat__Onat,type,
    nat: $tType ).

thf(ty_n_t__Int__Oint,type,
    int: $tType ).

thf(ty_n_tf__a,type,
    a: $tType ).

% Explicit typings (741)
thf(sy_c_Archimedean__Field_Oceiling_001t__Rat__Orat,type,
    archim2889992004027027881ng_rat: rat > int ).

thf(sy_c_Archimedean__Field_Ofloor__ceiling__class_Ofloor_001t__Rat__Orat,type,
    archim3151403230148437115or_rat: rat > int ).

thf(sy_c_Archimedean__Field_Ofrac_001t__Rat__Orat,type,
    archimedean_frac_rat: rat > rat ).

thf(sy_c_Array__Time_Omake_001_Eo,type,
    array_make_o: nat > ( nat > $o ) > heap_T5660665574680485309rray_o ).

thf(sy_c_Array__Time_Omake_001t__Int__Oint,type,
    array_make_int: nat > ( nat > int ) > heap_T1346037964561226099ay_int ).

thf(sy_c_Array__Time_Omake_001t__Nat__Onat,type,
    array_make_nat: nat > ( nat > nat ) > heap_T3836121109492952855ay_nat ).

thf(sy_c_Array__Time_Onth_001t__Product____Type__Ounit,type,
    array_7872002506669749220t_unit: array_Product_unit > nat > heap_T5738788834812785303t_unit ).

thf(sy_c_Array__Time_Oof__list_001_Eo,type,
    array_of_list_o: list_o > heap_T5660665574680485309rray_o ).

thf(sy_c_Array__Time_Oof__list_001t__Int__Oint,type,
    array_of_list_int: list_int > heap_T1346037964561226099ay_int ).

thf(sy_c_Array__Time_Oof__list_001t__Nat__Onat,type,
    array_of_list_nat: list_nat > heap_T3836121109492952855ay_nat ).

thf(sy_c_BNF__Cardinal__Order__Relation_OnatLess,type,
    bNF_Ca8459412986667044542atLess: set_Pr1261947904930325089at_nat ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Code____Numeral__Ointeger_001_062_It__Int__Oint_M_Eo_J_001_062_It__Code____Numeral__Ointeger_M_Eo_J,type,
    bNF_re6321650412969554871eger_o: ( int > code_integer > $o ) > ( ( int > $o ) > ( code_integer > $o ) > $o ) > ( int > int > $o ) > ( code_integer > code_integer > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Code____Numeral__Ointeger_001_062_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    bNF_re398004352372739002nteger: ( int > code_integer > $o ) > ( ( int > int ) > ( code_integer > code_integer ) > $o ) > ( int > int > int ) > ( code_integer > code_integer > code_integer ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Code____Numeral__Ointeger_001_062_It__Nat__Onat_M_Eo_J_001_062_It__Nat__Onat_M_Eo_J,type,
    bNF_re4711666741709854504_nat_o: ( int > code_integer > $o ) > ( ( nat > $o ) > ( nat > $o ) > $o ) > ( int > nat > $o ) > ( code_integer > nat > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Code____Numeral__Ointeger_001_Eo_001_Eo,type,
    bNF_re6574881592172037608er_o_o: ( int > code_integer > $o ) > ( $o > $o > $o ) > ( int > $o ) > ( code_integer > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Code____Numeral__Ointeger_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    bNF_re3379532845092657523nteger: ( int > code_integer > $o ) > ( int > code_integer > $o ) > ( int > int ) > ( code_integer > code_integer ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Code____Numeral__Ointeger_001t__Int__Oint_001t__Int__Oint,type,
    bNF_re3804157879324367682nt_int: ( int > code_integer > $o ) > ( int > int > $o ) > ( int > int ) > ( code_integer > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Code____Numeral__Ointeger_001t__Nat__Onat_001t__Nat__Onat,type,
    bNF_re2807294637932363402at_nat: ( int > code_integer > $o ) > ( nat > nat > $o ) > ( int > nat ) > ( code_integer > nat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Code____Numeral__Ointeger_001t__Num__Onum_001t__Num__Onum,type,
    bNF_re6718328864250387230um_num: ( int > code_integer > $o ) > ( num > num > $o ) > ( int > num ) > ( code_integer > num ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001_062_It__Int__Oint_M_Eo_J_001_062_It__Int__Oint_M_Eo_J,type,
    bNF_re3403563459893282935_int_o: ( int > int > $o ) > ( ( int > $o ) > ( int > $o ) > $o ) > ( int > int > $o ) > ( int > int > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001_062_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Int__Oint_Mt__Int__Oint_J,type,
    bNF_re711492959462206631nt_int: ( int > int > $o ) > ( ( int > int ) > ( int > int ) > $o ) > ( int > int > int ) > ( int > int > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001_062_It__Int__Oint_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001_062_It__Int__Oint_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    bNF_re157797125943740599nt_int: ( int > int > $o ) > ( ( int > product_prod_int_int ) > ( int > product_prod_int_int ) > $o ) > ( int > int > product_prod_int_int ) > ( int > int > product_prod_int_int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001_062_It__Int__Oint_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001_062_It__Int__Oint_Mt__Rat__Orat_J,type,
    bNF_re3461391660133120880nt_rat: ( int > int > $o ) > ( ( int > product_prod_int_int ) > ( int > rat ) > $o ) > ( int > int > product_prod_int_int ) > ( int > int > rat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001_062_It__Nat__Onat_M_Eo_J_001_062_It__Nat__Onat_M_Eo_J,type,
    bNF_re3376528473927230327_nat_o: ( int > int > $o ) > ( ( nat > $o ) > ( nat > $o ) > $o ) > ( int > nat > $o ) > ( int > nat > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001_Eo_001_Eo,type,
    bNF_re5089333283451836215nt_o_o: ( int > int > $o ) > ( $o > $o > $o ) > ( int > $o ) > ( int > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    bNF_re982302072995117890nteger: ( int > int > $o ) > ( int > code_integer > $o ) > ( int > int ) > ( int > code_integer ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint,type,
    bNF_re4712519889275205905nt_int: ( int > int > $o ) > ( int > int > $o ) > ( int > int ) > ( int > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001t__Nat__Onat_001t__Nat__Onat,type,
    bNF_re3715656647883201625at_nat: ( int > int > $o ) > ( nat > nat > $o ) > ( int > nat ) > ( int > nat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001t__Num__Onum_001t__Num__Onum,type,
    bNF_re7626690874201225453um_num: ( int > int > $o ) > ( num > num > $o ) > ( int > num ) > ( int > num ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    bNF_re6250860962936578807nt_int: ( int > int > $o ) > ( product_prod_int_int > product_prod_int_int > $o ) > ( int > product_prod_int_int ) > ( int > product_prod_int_int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Int__Oint_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat,type,
    bNF_re2214769303045360666nt_rat: ( int > int > $o ) > ( product_prod_int_int > rat > $o ) > ( int > product_prod_int_int ) > ( int > rat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    bNF_re4935368626670024657nteger: ( nat > nat > $o ) > ( ( int > int ) > ( code_integer > code_integer ) > $o ) > ( nat > int > int ) > ( nat > code_integer > code_integer ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Int__Oint_Mt__Int__Oint_J,type,
    bNF_re4785983289428654063nt_int: ( nat > nat > $o ) > ( ( int > int ) > ( int > int ) > $o ) > ( nat > int > int ) > ( nat > int > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Nat__Onat_M_Eo_J_001_062_It__Nat__Onat_M_Eo_J,type,
    bNF_re578469030762574527_nat_o: ( nat > nat > $o ) > ( ( nat > $o ) > ( nat > $o ) > $o ) > ( nat > nat > $o ) > ( nat > nat > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    bNF_re1345281282404953727at_nat: ( nat > nat > $o ) > ( ( nat > nat ) > ( nat > nat ) > $o ) > ( nat > nat > nat ) > ( nat > nat > nat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Nat__Onat_001t__Nat__Onat_001_Eo_001_Eo,type,
    bNF_re4705727531993890431at_o_o: ( nat > nat > $o ) > ( $o > $o > $o ) > ( nat > $o ) > ( nat > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Nat__Onat_001t__Nat__Onat_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    bNF_re4153400068438556298nteger: ( nat > nat > $o ) > ( int > code_integer > $o ) > ( nat > int ) > ( nat > code_integer ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Nat__Onat_001t__Nat__Onat_001t__Int__Oint_001t__Int__Oint,type,
    bNF_re6650684261131312217nt_int: ( nat > nat > $o ) > ( int > int > $o ) > ( nat > int ) > ( nat > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat,type,
    bNF_re5653821019739307937at_nat: ( nat > nat > $o ) > ( nat > nat > $o ) > ( nat > nat ) > ( nat > nat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Nat__Onat_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    bNF_re6830278522597306478at_int: ( nat > nat > $o ) > ( product_prod_nat_nat > int > $o ) > ( nat > product_prod_nat_nat ) > ( nat > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Num__Onum_001t__Num__Onum_001_062_It__Num__Onum_Mt__Int__Oint_J_001_062_It__Num__Onum_Mt__Code____Numeral__Ointeger_J,type,
    bNF_re7876454716742015248nteger: ( num > num > $o ) > ( ( num > int ) > ( num > code_integer ) > $o ) > ( num > num > int ) > ( num > num > code_integer ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Num__Onum_001t__Num__Onum_001_062_It__Num__Onum_Mt__Int__Oint_J_001_062_It__Num__Onum_Mt__Int__Oint_J,type,
    bNF_re8402795839162346335um_int: ( num > num > $o ) > ( ( num > int ) > ( num > int ) > $o ) > ( num > num > int ) > ( num > num > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Num__Onum_001t__Num__Onum_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    bNF_re6501075790457514782nteger: ( num > num > $o ) > ( int > code_integer > $o ) > ( num > int ) > ( num > code_integer ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Num__Onum_001t__Num__Onum_001t__Int__Oint_001t__Int__Oint,type,
    bNF_re1822329894187522285nt_int: ( num > num > $o ) > ( int > int > $o ) > ( num > int ) > ( num > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001_062_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    bNF_re5228765855967844073nt_int: ( product_prod_int_int > product_prod_int_int > $o ) > ( ( product_prod_int_int > product_prod_int_int ) > ( product_prod_int_int > product_prod_int_int ) > $o ) > ( product_prod_int_int > product_prod_int_int > product_prod_int_int ) > ( product_prod_int_int > product_prod_int_int > product_prod_int_int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_Eo_001_Eo,type,
    bNF_re8699439704749558557nt_o_o: ( product_prod_int_int > product_prod_int_int > $o ) > ( $o > $o > $o ) > ( product_prod_int_int > $o ) > ( product_prod_int_int > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    bNF_re7145576690424134365nt_int: ( product_prod_int_int > product_prod_int_int > $o ) > ( product_prod_int_int > product_prod_int_int > $o ) > ( product_prod_int_int > product_prod_int_int ) > ( product_prod_int_int > product_prod_int_int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat_001_062_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001_062_It__Rat__Orat_Mt__Rat__Orat_J,type,
    bNF_re7627151682743391978at_rat: ( product_prod_int_int > rat > $o ) > ( ( product_prod_int_int > product_prod_int_int ) > ( rat > rat ) > $o ) > ( product_prod_int_int > product_prod_int_int > product_prod_int_int ) > ( rat > rat > rat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat_001_Eo_001_Eo,type,
    bNF_re1494630372529172596at_o_o: ( product_prod_int_int > rat > $o ) > ( $o > $o > $o ) > ( product_prod_int_int > $o ) > ( rat > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat,type,
    bNF_re8279943556446156061nt_rat: ( product_prod_int_int > rat > $o ) > ( product_prod_int_int > rat > $o ) > ( product_prod_int_int > product_prod_int_int ) > ( rat > rat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J_001_062_It__Int__Oint_M_Eo_J,type,
    bNF_re717283939379294677_int_o: ( product_prod_nat_nat > int > $o ) > ( ( product_prod_nat_nat > $o ) > ( int > $o ) > $o ) > ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( int > int > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001_062_It__Int__Oint_Mt__Int__Oint_J,type,
    bNF_re7408651293131936558nt_int: ( product_prod_nat_nat > int > $o ) > ( ( product_prod_nat_nat > product_prod_nat_nat ) > ( int > int ) > $o ) > ( product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ) > ( int > int > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint_001_Eo_001_Eo,type,
    bNF_re6644619430987730960nt_o_o: ( product_prod_nat_nat > int > $o ) > ( $o > $o > $o ) > ( product_prod_nat_nat > $o ) > ( int > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint_001t__Nat__Onat_001t__Nat__Onat,type,
    bNF_re4555766996558763186at_nat: ( product_prod_nat_nat > int > $o ) > ( nat > nat > $o ) > ( product_prod_nat_nat > nat ) > ( int > nat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    bNF_re7400052026677387805at_int: ( product_prod_nat_nat > int > $o ) > ( product_prod_nat_nat > int > $o ) > ( product_prod_nat_nat > product_prod_nat_nat ) > ( int > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J,type,
    bNF_re4202695980764964119_nat_o: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( ( product_prod_nat_nat > $o ) > ( product_prod_nat_nat > $o ) > $o ) > ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( product_prod_nat_nat > product_prod_nat_nat > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    bNF_re3099431351363272937at_nat: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( ( product_prod_nat_nat > product_prod_nat_nat ) > ( product_prod_nat_nat > product_prod_nat_nat ) > $o ) > ( product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ) > ( product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001_Eo_001_Eo,type,
    bNF_re3666534408544137501at_o_o: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( $o > $o > $o ) > ( product_prod_nat_nat > $o ) > ( product_prod_nat_nat > $o ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat_001t__Nat__Onat,type,
    bNF_re8246922863344978751at_nat: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( nat > nat > $o ) > ( product_prod_nat_nat > nat ) > ( product_prod_nat_nat > nat ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    bNF_re7934895593101944656at_int: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( product_prod_nat_nat > int > $o ) > ( product_prod_nat_nat > product_prod_nat_nat ) > ( product_prod_nat_nat > int ) > $o ).

thf(sy_c_BNF__Def_Orel__fun_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    bNF_re2241393799969408733at_nat: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( product_prod_nat_nat > product_prod_nat_nat ) > ( product_prod_nat_nat > product_prod_nat_nat ) > $o ).

thf(sy_c_Basic__BNFs_Opred__prod_001t__Int__Oint_001t__Int__Oint,type,
    basic_1567116559311922317nt_int: ( int > $o ) > ( int > $o ) > product_prod_int_int > $o ).

thf(sy_c_Basic__BNFs_Opred__prod_001t__Nat__Onat_001t__Nat__Onat,type,
    basic_570253317919918037at_nat: ( nat > $o ) > ( nat > $o ) > product_prod_nat_nat > $o ).

thf(sy_c_Basic__BNFs_Orel__prod_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint,type,
    basic_4387203522000727145nt_int: ( int > int > $o ) > ( int > int > $o ) > product_prod_int_int > product_prod_int_int > $o ).

thf(sy_c_Basic__BNFs_Orel__prod_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat,type,
    basic_5328504652464829177at_nat: ( nat > nat > $o ) > ( nat > nat > $o ) > product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_Binomial_Obinomial,type,
    binomial: nat > nat > nat ).

thf(sy_c_Binomial_Ogbinomial_001t__Code____Numeral__Ointeger,type,
    gbinom8545251970709558553nteger: code_integer > nat > code_integer ).

thf(sy_c_Binomial_Ogbinomial_001t__Code____Numeral__Onatural,type,
    gbinom7368847122466276068atural: code_natural > nat > code_natural ).

thf(sy_c_Binomial_Ogbinomial_001t__Int__Oint,type,
    gbinomial_int: int > nat > int ).

thf(sy_c_Binomial_Ogbinomial_001t__Nat__Onat,type,
    gbinomial_nat: nat > nat > nat ).

thf(sy_c_Binomial_Ogbinomial_001t__Rat__Orat,type,
    gbinomial_rat: rat > nat > rat ).

thf(sy_c_Bit__Operations_Oand__int__rel,type,
    bit_and_int_rel: product_prod_int_int > product_prod_int_int > $o ).

thf(sy_c_Bit__Operations_Oand__not__num,type,
    bit_and_not_num: num > num > option_num ).

thf(sy_c_Bit__Operations_Oand__not__num__rel,type,
    bit_and_not_num_rel: product_prod_num_num > product_prod_num_num > $o ).

thf(sy_c_Bit__Operations_Oconcat__bit,type,
    bit_concat_bit: nat > int > int > int ).

thf(sy_c_Bit__Operations_Oor__not__num__neg,type,
    bit_or_not_num_neg: num > num > num ).

thf(sy_c_Bit__Operations_Oring__bit__operations__class_Onot_001t__Code____Numeral__Ointeger,type,
    bit_ri7632146776885996613nteger: code_integer > code_integer ).

thf(sy_c_Bit__Operations_Oring__bit__operations__class_Onot_001t__Int__Oint,type,
    bit_ri7919022796975470100ot_int: int > int ).

thf(sy_c_Bit__Operations_Oring__bit__operations__class_Osigned__take__bit_001t__Int__Oint,type,
    bit_ri631733984087533419it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oand_001t__Code____Numeral__Ointeger,type,
    bit_se3949692690581998587nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oand_001t__Code____Numeral__Onatural,type,
    bit_se2773287842338716102atural: code_natural > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oand_001t__Int__Oint,type,
    bit_se725231765392027082nd_int: int > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oand_001t__Nat__Onat,type,
    bit_se727722235901077358nd_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Odrop__bit_001t__Code____Numeral__Ointeger,type,
    bit_se3928097537394005634nteger: nat > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Odrop__bit_001t__Code____Numeral__Onatural,type,
    bit_se2751692689150723149atural: nat > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Odrop__bit_001t__Int__Oint,type,
    bit_se8568078237143864401it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Odrop__bit_001t__Nat__Onat,type,
    bit_se8570568707652914677it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oflip__bit_001t__Code____Numeral__Ointeger,type,
    bit_se1345352211410354436nteger: nat > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oflip__bit_001t__Code____Numeral__Onatural,type,
    bit_se168947363167071951atural: nat > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oflip__bit_001t__Int__Oint,type,
    bit_se2159334234014336723it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oflip__bit_001t__Nat__Onat,type,
    bit_se2161824704523386999it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Omask_001t__Code____Numeral__Ointeger,type,
    bit_se2119862282449309892nteger: nat > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Omask_001t__Code____Numeral__Onatural,type,
    bit_se943457434206027407atural: nat > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Omask_001t__Int__Oint,type,
    bit_se2000444600071755411sk_int: nat > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Omask_001t__Nat__Onat,type,
    bit_se2002935070580805687sk_nat: nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oor_001t__Code____Numeral__Ointeger,type,
    bit_se1080825931792720795nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oor_001t__Code____Numeral__Onatural,type,
    bit_se9127793120404214118atural: code_natural > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oor_001t__Int__Oint,type,
    bit_se1409905431419307370or_int: int > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oor_001t__Nat__Onat,type,
    bit_se1412395901928357646or_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Opush__bit_001t__Code____Numeral__Ointeger,type,
    bit_se7788150548672797655nteger: nat > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Opush__bit_001t__Code____Numeral__Onatural,type,
    bit_se6611745700429515170atural: nat > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Opush__bit_001t__Int__Oint,type,
    bit_se545348938243370406it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Opush__bit_001t__Nat__Onat,type,
    bit_se547839408752420682it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oset__bit_001t__Code____Numeral__Ointeger,type,
    bit_se2793503036327961859nteger: nat > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oset__bit_001t__Code____Numeral__Onatural,type,
    bit_se1617098188084679374atural: nat > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oset__bit_001t__Int__Oint,type,
    bit_se7879613467334960850it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oset__bit_001t__Nat__Onat,type,
    bit_se7882103937844011126it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Otake__bit_001t__Code____Numeral__Ointeger,type,
    bit_se1745604003318907178nteger: nat > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Otake__bit_001t__Code____Numeral__Onatural,type,
    bit_se569199155075624693atural: nat > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Otake__bit_001t__Int__Oint,type,
    bit_se2923211474154528505it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Otake__bit_001t__Nat__Onat,type,
    bit_se2925701944663578781it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Ounset__bit_001t__Code____Numeral__Ointeger,type,
    bit_se8260200283734997820nteger: nat > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Ounset__bit_001t__Code____Numeral__Onatural,type,
    bit_se7083795435491715335atural: nat > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Ounset__bit_001t__Int__Oint,type,
    bit_se4203085406695923979it_int: nat > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Ounset__bit_001t__Nat__Onat,type,
    bit_se4205575877204974255it_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oxor_001t__Code____Numeral__Ointeger,type,
    bit_se3222712562003087583nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oxor_001t__Code____Numeral__Onatural,type,
    bit_se2046307713759805098atural: code_natural > code_natural > code_natural ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oxor_001t__Int__Oint,type,
    bit_se6526347334894502574or_int: int > int > int ).

thf(sy_c_Bit__Operations_Osemiring__bit__operations__class_Oxor_001t__Nat__Onat,type,
    bit_se6528837805403552850or_nat: nat > nat > nat ).

thf(sy_c_Bit__Operations_Osemiring__bits__class_Obit_001t__Code____Numeral__Ointeger,type,
    bit_se9216721137139052372nteger: code_integer > nat > $o ).

thf(sy_c_Bit__Operations_Osemiring__bits__class_Obit_001t__Code____Numeral__Onatural,type,
    bit_se8040316288895769887atural: code_natural > nat > $o ).

thf(sy_c_Bit__Operations_Osemiring__bits__class_Obit_001t__Int__Oint,type,
    bit_se1146084159140164899it_int: int > nat > $o ).

thf(sy_c_Bit__Operations_Osemiring__bits__class_Obit_001t__Nat__Onat,type,
    bit_se1148574629649215175it_nat: nat > nat > $o ).

thf(sy_c_Bit__Operations_Otake__bit__num,type,
    bit_take_bit_num: nat > num > option_num ).

thf(sy_c_Bit__Operations_Ounique__euclidean__semiring__with__bit__operations__class_Oand__num,type,
    bit_un7362597486090784418nd_num: num > num > option_num ).

thf(sy_c_Bit__Operations_Ounique__euclidean__semiring__with__bit__operations__class_Oand__num__rel,type,
    bit_un4731106466462545111um_rel: product_prod_num_num > product_prod_num_num > $o ).

thf(sy_c_Code__Numeral_ONat,type,
    code_Nat: code_integer > code_natural ).

thf(sy_c_Code__Numeral_ONeg,type,
    code_Neg: num > code_integer ).

thf(sy_c_Code__Numeral_OSuc,type,
    code_Suc: code_natural > code_natural ).

thf(sy_c_Code__Numeral_Obit__cut__integer,type,
    code_bit_cut_integer: code_integer > produc6271795597528267376eger_o ).

thf(sy_c_Code__Numeral_Odivmod__abs,type,
    code_divmod_abs: code_integer > code_integer > produc8923325533196201883nteger ).

thf(sy_c_Code__Numeral_Odivmod__integer,type,
    code_divmod_integer: code_integer > code_integer > produc8923325533196201883nteger ).

thf(sy_c_Code__Numeral_Odup,type,
    code_dup: code_integer > code_integer ).

thf(sy_c_Code__Numeral_Ointeger_Oint__of__integer,type,
    code_int_of_integer: code_integer > int ).

thf(sy_c_Code__Numeral_Ointeger_Ointeger__of__int,type,
    code_integer_of_int: int > code_integer ).

thf(sy_c_Code__Numeral_Ointeger__of__nat,type,
    code_integer_of_nat: nat > code_integer ).

thf(sy_c_Code__Numeral_Ointeger__of__natural,type,
    code_i5400310926305786745atural: code_natural > code_integer ).

thf(sy_c_Code__Numeral_Ointeger__of__num,type,
    code_integer_of_num: num > code_integer ).

thf(sy_c_Code__Numeral_Onat__of__integer,type,
    code_nat_of_integer: code_integer > nat ).

thf(sy_c_Code__Numeral_Onatural_Onat__of__natural,type,
    code_nat_of_natural: code_natural > nat ).

thf(sy_c_Code__Numeral_Onatural_Onatural__of__nat,type,
    code_natural_of_nat: nat > code_natural ).

thf(sy_c_Code__Numeral_Onatural__of__integer,type,
    code_n4118661773612635043nteger: code_integer > code_natural ).

thf(sy_c_Code__Numeral_Onegative,type,
    code_negative: num > code_integer ).

thf(sy_c_Code__Numeral_Onum__of__integer,type,
    code_num_of_integer: code_integer > num ).

thf(sy_c_Code__Numeral_Opcr__integer,type,
    code_pcr_integer: int > code_integer > $o ).

thf(sy_c_Code__Numeral_Opositive,type,
    code_positive: num > code_integer ).

thf(sy_c_Code__Numeral_Osize__nat,type,
    code_size_nat: code_natural > nat ).

thf(sy_c_Code__Numeral_Osub,type,
    code_sub: num > num > code_integer ).

thf(sy_c_Complete__Lattices_OInf__class_OInf_001t__Nat__Onat,type,
    complete_Inf_Inf_nat: set_nat > nat ).

thf(sy_c_Complete__Lattices_OInf__class_OInf_001t__Set__Oset_It__Nat__Onat_J,type,
    comple7806235888213564991et_nat: set_set_nat > set_nat ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Int__Oint,type,
    complete_Sup_Sup_int: set_int > int ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Nat__Onat,type,
    complete_Sup_Sup_nat: set_nat > nat ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_It__Nat__Onat_J,type,
    comple7399068483239264473et_nat: set_set_nat > set_nat ).

thf(sy_c_Divides_Oadjust__div,type,
    adjust_div: product_prod_int_int > int ).

thf(sy_c_Divides_Oadjust__mod,type,
    adjust_mod: int > int > int ).

thf(sy_c_Divides_Odivmod__nat,type,
    divmod_nat: nat > nat > product_prod_nat_nat ).

thf(sy_c_Divides_Oeucl__rel__int,type,
    eucl_rel_int: int > int > product_prod_int_int > $o ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod_001t__Code____Numeral__Ointeger,type,
    unique3479559517661332726nteger: num > num > produc8923325533196201883nteger ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod_001t__Int__Oint,type,
    unique5052692396658037445od_int: num > num > product_prod_int_int ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod_001t__Nat__Onat,type,
    unique5055182867167087721od_nat: num > num > product_prod_nat_nat ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod__step_001t__Code____Numeral__Ointeger,type,
    unique4921790084139445826nteger: num > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod__step_001t__Int__Oint,type,
    unique5024387138958732305ep_int: num > product_prod_int_int > product_prod_int_int ).

thf(sy_c_Divides_Ounique__euclidean__semiring__numeral__class_Odivmod__step_001t__Nat__Onat,type,
    unique5026877609467782581ep_nat: num > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Euclidean__Division_Oeuclidean__semiring__class_Oeuclidean__size_001t__Code____Numeral__Ointeger,type,
    euclid6377331345833325938nteger: code_integer > nat ).

thf(sy_c_Euclidean__Division_Oeuclidean__semiring__class_Oeuclidean__size_001t__Code____Numeral__Onatural,type,
    euclid5200926497590043453atural: code_natural > nat ).

thf(sy_c_Euclidean__Division_Oeuclidean__semiring__class_Oeuclidean__size_001t__Int__Oint,type,
    euclid4774559944035922753ze_int: int > nat ).

thf(sy_c_Euclidean__Division_Oeuclidean__semiring__class_Oeuclidean__size_001t__Nat__Onat,type,
    euclid4777050414544973029ze_nat: nat > nat ).

thf(sy_c_Euclidean__Division_Ounique__euclidean__semiring__class_Odivision__segment_001t__Code____Numeral__Ointeger,type,
    euclid6289375185220004616nteger: code_integer > code_integer ).

thf(sy_c_Euclidean__Division_Ounique__euclidean__semiring__class_Odivision__segment_001t__Code____Numeral__Onatural,type,
    euclid5112970336976722131atural: code_natural > code_natural ).

thf(sy_c_Euclidean__Division_Ounique__euclidean__semiring__class_Odivision__segment_001t__Int__Oint,type,
    euclid3395696857347342551nt_int: int > int ).

thf(sy_c_Euclidean__Division_Ounique__euclidean__semiring__class_Odivision__segment_001t__Nat__Onat,type,
    euclid3398187327856392827nt_nat: nat > nat ).

thf(sy_c_Factorial_Ocomm__semiring__1__class_Opochhammer_001t__Code____Numeral__Ointeger,type,
    comm_s8582702949713902594nteger: code_integer > nat > code_integer ).

thf(sy_c_Factorial_Ocomm__semiring__1__class_Opochhammer_001t__Code____Numeral__Onatural,type,
    comm_s7406298101470620109atural: code_natural > nat > code_natural ).

thf(sy_c_Factorial_Ocomm__semiring__1__class_Opochhammer_001t__Int__Oint,type,
    comm_s4660882817536571857er_int: int > nat > int ).

thf(sy_c_Factorial_Ocomm__semiring__1__class_Opochhammer_001t__Nat__Onat,type,
    comm_s4663373288045622133er_nat: nat > nat > nat ).

thf(sy_c_Factorial_Ocomm__semiring__1__class_Opochhammer_001t__Rat__Orat,type,
    comm_s4028243227959126397er_rat: rat > nat > rat ).

thf(sy_c_Factorial_Osemiring__char__0__class_Ofact_001t__Code____Numeral__Ointeger,type,
    semiri3624122377584611663nteger: nat > code_integer ).

thf(sy_c_Factorial_Osemiring__char__0__class_Ofact_001t__Code____Numeral__Onatural,type,
    semiri2447717529341329178atural: nat > code_natural ).

thf(sy_c_Factorial_Osemiring__char__0__class_Ofact_001t__Int__Oint,type,
    semiri1406184849735516958ct_int: nat > int ).

thf(sy_c_Factorial_Osemiring__char__0__class_Ofact_001t__Nat__Onat,type,
    semiri1408675320244567234ct_nat: nat > nat ).

thf(sy_c_Factorial_Osemiring__char__0__class_Ofact_001t__Rat__Orat,type,
    semiri773545260158071498ct_rat: nat > rat ).

thf(sy_c_Fields_Oinverse__class_Oinverse_001t__Rat__Orat,type,
    inverse_inverse_rat: rat > rat ).

thf(sy_c_Filter_Oat__top_001t__Nat__Onat,type,
    at_top_nat: filter_nat ).

thf(sy_c_Filter_Oeventually_001t__Nat__Onat,type,
    eventually_nat: ( nat > $o ) > filter_nat > $o ).

thf(sy_c_Filter_Oeventually_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    eventu1038000079068216329at_nat: ( product_prod_nat_nat > $o ) > filter1242075044329608583at_nat > $o ).

thf(sy_c_Filter_Ofilterlim_001t__Nat__Onat_001t__Set__Oset_It__Nat__Onat_J,type,
    filter3212408913953519116et_nat: ( nat > set_nat ) > filter_set_nat > filter_nat > $o ).

thf(sy_c_Filter_Ofinite__subsets__at__top_001t__Nat__Onat,type,
    finite3254316476582989077op_nat: set_nat > filter_set_nat ).

thf(sy_c_Filter_Oprod__filter_001t__Nat__Onat_001t__Nat__Onat,type,
    prod_filter_nat_nat: filter_nat > filter_nat > filter1242075044329608583at_nat ).

thf(sy_c_Finite__Set_Ocard_001t__Int__Oint,type,
    finite_card_int: set_int > nat ).

thf(sy_c_Finite__Set_Ocard_001t__List__Olist_It__Nat__Onat_J,type,
    finite_card_list_nat: set_list_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Nat__Onat,type,
    finite_card_nat: set_nat > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Product____Type__Ounit,type,
    finite410649719033368117t_unit: set_Product_unit > nat ).

thf(sy_c_Finite__Set_Ocard_001t__Set__Oset_It__Nat__Onat_J,type,
    finite_card_set_nat: set_set_nat > nat ).

thf(sy_c_Finite__Set_Ofinite_001t__Code____Numeral__Ointeger,type,
    finite6017078050557962740nteger: set_Code_integer > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Int__Oint,type,
    finite_finite_int: set_int > $o ).

thf(sy_c_Finite__Set_Ofinite_001t__Nat__Onat,type,
    finite_finite_nat: set_nat > $o ).

thf(sy_c_Fun_Obij__betw_001t__Nat__Onat_001t__Nat__Onat,type,
    bij_betw_nat_nat: ( nat > nat ) > set_nat > set_nat > $o ).

thf(sy_c_Fun_Ocomp_001_062_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J_001t__Code____Numeral__Ointeger,type,
    comp_C8797469213163452608nteger: ( ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger ) > ( code_integer > code_integer > code_integer ) > code_integer > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Fun_Ocomp_001t__Code____Numeral__Ointeger_001_062_It__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_Mt__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_J_001t__Code____Numeral__Ointeger,type,
    comp_C1593894019821074884nteger: ( code_integer > produc8923325533196201883nteger > produc8923325533196201883nteger ) > ( code_integer > code_integer ) > code_integer > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Fun_Ocomp_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Num__Onum,type,
    comp_C3531382070062128313er_num: ( code_integer > code_integer ) > ( num > code_integer ) > num > code_integer ).

thf(sy_c_Fun_Ocomp_001t__Int__Oint_001t__Nat__Onat_001t__Int__Oint,type,
    comp_int_nat_int: ( int > nat ) > ( int > int ) > int > nat ).

thf(sy_c_Fun_Ocomp_001t__Nat__Onat_001t__Num__Onum_001t__Int__Oint,type,
    comp_nat_num_int: ( nat > num ) > ( int > nat ) > int > num ).

thf(sy_c_Fun_Oid_001_062_It__Nat__Onat_M_Eo_J,type,
    id_nat_o: ( nat > $o ) > nat > $o ).

thf(sy_c_Fun_Oid_001_Eo,type,
    id_o: $o > $o ).

thf(sy_c_Fun_Oid_001t__Int__Oint,type,
    id_int: int > int ).

thf(sy_c_Fun_Oid_001t__Nat__Onat,type,
    id_nat: nat > nat ).

thf(sy_c_Fun_Oid_001t__Num__Onum,type,
    id_num: num > num ).

thf(sy_c_Fun_Oinj__on_001t__Nat__Onat_001t__Nat__Onat,type,
    inj_on_nat_nat: ( nat > nat ) > set_nat > $o ).

thf(sy_c_Fun_Oinj__on_001t__Nat__Onat_001t__String__Ochar,type,
    inj_on_nat_char: ( nat > char ) > set_nat > $o ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Ointeger_001t__Int__Oint_001_062_It__Int__Oint_M_Eo_J_001_062_It__Code____Numeral__Ointeger_M_Eo_J,type,
    map_fu2496120808607739376eger_o: ( code_integer > int ) > ( ( int > $o ) > code_integer > $o ) > ( int > int > $o ) > code_integer > code_integer > $o ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Ointeger_001t__Int__Oint_001_062_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    map_fu8272188784021352819nteger: ( code_integer > int ) > ( ( int > int ) > code_integer > code_integer ) > ( int > int > int ) > code_integer > code_integer > code_integer ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Ointeger_001t__Int__Oint_001_062_It__Nat__Onat_M_Eo_J_001_062_It__Nat__Onat_M_Eo_J,type,
    map_fu186220595405829473_nat_o: ( code_integer > int ) > ( ( nat > $o ) > nat > $o ) > ( int > nat > $o ) > code_integer > nat > $o ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Ointeger_001t__Int__Oint_001_Eo_001_Eo,type,
    map_fu6957801986076833569nt_o_o: ( code_integer > int ) > ( $o > $o ) > ( int > $o ) > code_integer > $o ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Ointeger_001t__Int__Oint_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    map_fu2599414010547811884nteger: ( code_integer > int ) > ( int > code_integer ) > ( int > int ) > code_integer > code_integer ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Ointeger_001t__Int__Oint_001t__Nat__Onat_001t__Code____Numeral__Onatural,type,
    map_fu1051355602067684763atural: ( code_integer > int ) > ( nat > code_natural ) > ( int > nat ) > code_integer > code_natural ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Ointeger_001t__Int__Oint_001t__Nat__Onat_001t__Nat__Onat,type,
    map_fu6539832666145259331at_nat: ( code_integer > int ) > ( nat > nat ) > ( int > nat ) > code_integer > nat ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Ointeger_001t__Int__Oint_001t__Num__Onum_001t__Num__Onum,type,
    map_fu1227494855608507351um_num: ( code_integer > int ) > ( num > num ) > ( int > num ) > code_integer > num ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Onatural_001t__Nat__Onat_001_062_It__Nat__Onat_M_Eo_J_001_062_It__Code____Numeral__Onatural_M_Eo_J,type,
    map_fu6256889081107267320ural_o: ( code_natural > nat ) > ( ( nat > $o ) > code_natural > $o ) > ( nat > nat > $o ) > code_natural > code_natural > $o ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Onatural_001t__Nat__Onat_001_062_It__Nat__Onat_M_Eo_J_001_062_It__Nat__Onat_M_Eo_J,type,
    map_fu6244533035418998608_nat_o: ( code_natural > nat ) > ( ( nat > $o ) > nat > $o ) > ( nat > nat > $o ) > code_natural > nat > $o ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Onatural_001t__Nat__Onat_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    map_fu6549440983881763648atural: ( code_natural > nat ) > ( ( nat > nat ) > code_natural > code_natural ) > ( nat > nat > nat ) > code_natural > code_natural > code_natural ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Onatural_001t__Nat__Onat_001_Eo_001_Eo,type,
    map_fu4892316939951275536at_o_o: ( code_natural > nat ) > ( $o > $o ) > ( nat > $o ) > code_natural > $o ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Onatural_001t__Nat__Onat_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    map_fu2787874002554666395nteger: ( code_natural > nat ) > ( int > code_integer ) > ( nat > int ) > code_natural > code_integer ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Onatural_001t__Nat__Onat_001t__Nat__Onat_001t__Code____Numeral__Onatural,type,
    map_fu1239815594074539274atural: ( code_natural > nat ) > ( nat > code_natural ) > ( nat > nat ) > code_natural > code_natural ).

thf(sy_c_Fun_Omap__fun_001t__Code____Numeral__Onatural_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat,type,
    map_fu226235371393106610at_nat: ( code_natural > nat ) > ( nat > nat ) > ( nat > nat ) > code_natural > nat ).

thf(sy_c_Fun_Omap__fun_001t__Int__Oint_001t__Int__Oint_001_062_It__Int__Oint_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001_062_It__Int__Oint_Mt__Rat__Orat_J,type,
    map_fu7831380289885515383nt_rat: ( int > int ) > ( ( int > product_prod_int_int ) > int > rat ) > ( int > int > product_prod_int_int ) > int > int > rat ).

thf(sy_c_Fun_Omap__fun_001t__Int__Oint_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat,type,
    map_fu3424225382358772769nt_rat: ( int > int ) > ( product_prod_int_int > rat ) > ( int > product_prod_int_int ) > int > rat ).

thf(sy_c_Fun_Omap__fun_001t__Int__Oint_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J_001_062_It__Int__Oint_M_Eo_J,type,
    map_fu434086159418415080_int_o: ( int > product_prod_nat_nat ) > ( ( product_prod_nat_nat > $o ) > int > $o ) > ( product_prod_nat_nat > product_prod_nat_nat > $o ) > int > int > $o ).

thf(sy_c_Fun_Omap__fun_001t__Int__Oint_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_001_062_It__Int__Oint_Mt__Int__Oint_J,type,
    map_fu4960017516451851995nt_int: ( int > product_prod_nat_nat ) > ( ( product_prod_nat_nat > product_prod_nat_nat ) > int > int ) > ( product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ) > int > int > int ).

thf(sy_c_Fun_Omap__fun_001t__Int__Oint_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001_Eo_001_Eo,type,
    map_fu4826362097070443709at_o_o: ( int > product_prod_nat_nat ) > ( $o > $o ) > ( product_prod_nat_nat > $o ) > int > $o ).

thf(sy_c_Fun_Omap__fun_001t__Int__Oint_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Nat__Onat_001t__Nat__Onat,type,
    map_fu2345160673673942751at_nat: ( int > product_prod_nat_nat ) > ( nat > nat ) > ( product_prod_nat_nat > nat ) > int > nat ).

thf(sy_c_Fun_Omap__fun_001t__Int__Oint_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    map_fu3667384564859982768at_int: ( int > product_prod_nat_nat ) > ( product_prod_nat_nat > int ) > ( product_prod_nat_nat > product_prod_nat_nat ) > int > int ).

thf(sy_c_Fun_Omap__fun_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    map_fu8224359078269604234nteger: ( nat > nat ) > ( ( int > int ) > code_integer > code_integer ) > ( nat > int > int ) > nat > code_integer > code_integer ).

thf(sy_c_Fun_Omap__fun_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Nat__Onat_Mt__Nat__Onat_J_001_062_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    map_fu6981160461238011112atural: ( nat > nat ) > ( ( nat > nat ) > code_natural > code_natural ) > ( nat > nat > nat ) > nat > code_natural > code_natural ).

thf(sy_c_Fun_Omap__fun_001t__Nat__Onat_001t__Nat__Onat_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    map_fu6290471996055670595nteger: ( nat > nat ) > ( int > code_integer ) > ( nat > int ) > nat > code_integer ).

thf(sy_c_Fun_Omap__fun_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat_001t__Code____Numeral__Onatural,type,
    map_fu4742413587575543474atural: ( nat > nat ) > ( nat > code_natural ) > ( nat > nat ) > nat > code_natural ).

thf(sy_c_Fun_Omap__fun_001t__Num__Onum_001t__Num__Onum_001_062_It__Num__Onum_Mt__Int__Oint_J_001_062_It__Num__Onum_Mt__Code____Numeral__Ointeger_J,type,
    map_fu6891787308814931657nteger: ( num > num ) > ( ( num > int ) > num > code_integer ) > ( num > num > int ) > num > num > code_integer ).

thf(sy_c_Fun_Omap__fun_001t__Num__Onum_001t__Num__Onum_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    map_fu8638147718074629079nteger: ( num > num ) > ( int > code_integer ) > ( num > int ) > num > code_integer ).

thf(sy_c_Fun_Omap__fun_001t__Rat__Orat_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_062_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_Mt__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_001_062_It__Rat__Orat_Mt__Rat__Orat_J,type,
    map_fu4333342158222067775at_rat: ( rat > product_prod_int_int ) > ( ( product_prod_int_int > product_prod_int_int ) > rat > rat ) > ( product_prod_int_int > product_prod_int_int > product_prod_int_int ) > rat > rat > rat ).

thf(sy_c_Fun_Omap__fun_001t__Rat__Orat_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001_Eo_001_Eo,type,
    map_fu898904425404107465nt_o_o: ( rat > product_prod_int_int ) > ( $o > $o ) > ( product_prod_int_int > $o ) > rat > $o ).

thf(sy_c_Fun_Omap__fun_001t__Rat__Orat_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat,type,
    map_fu5673905371560938248nt_rat: ( rat > product_prod_int_int ) > ( product_prod_int_int > rat ) > ( product_prod_int_int > product_prod_int_int ) > rat > rat ).

thf(sy_c_Fun__Def_Ois__measure_001t__Int__Oint,type,
    fun_is_measure_int: ( int > nat ) > $o ).

thf(sy_c_Fun__Def_Opair__leq,type,
    fun_pair_leq: set_Pr8693737435421807431at_nat ).

thf(sy_c_Fun__Def_Opair__less,type,
    fun_pair_less: set_Pr8693737435421807431at_nat ).

thf(sy_c_GCD_OGcd__class_OGcd_001t__Int__Oint,type,
    gcd_Gcd_int: set_int > int ).

thf(sy_c_GCD_OGcd__class_OGcd_001t__Nat__Onat,type,
    gcd_Gcd_nat: set_nat > nat ).

thf(sy_c_GCD_Obezw,type,
    bezw: nat > nat > product_prod_int_int ).

thf(sy_c_GCD_Obezw__rel,type,
    bezw_rel: product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_GCD_Ogcd__class_Ogcd_001t__Code____Numeral__Ointeger,type,
    gcd_gcd_Code_integer: code_integer > code_integer > code_integer ).

thf(sy_c_GCD_Ogcd__class_Ogcd_001t__Int__Oint,type,
    gcd_gcd_int: int > int > int ).

thf(sy_c_GCD_Ogcd__class_Ogcd_001t__Nat__Onat,type,
    gcd_gcd_nat: nat > nat > nat ).

thf(sy_c_GCD_Ogcd__class_Olcm_001t__Code____Numeral__Ointeger,type,
    gcd_lcm_Code_integer: code_integer > code_integer > code_integer ).

thf(sy_c_GCD_Ogcd__class_Olcm_001t__Int__Oint,type,
    gcd_lcm_int: int > int > int ).

thf(sy_c_GCD_Ogcd__class_Olcm_001t__Nat__Onat,type,
    gcd_lcm_nat: nat > nat > nat ).

thf(sy_c_GCD_Ogcd__nat__rel,type,
    gcd_nat_rel: product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_Groups_Oabs__class_Oabs_001t__Code____Numeral__Ointeger,type,
    abs_abs_Code_integer: code_integer > code_integer ).

thf(sy_c_Groups_Oabs__class_Oabs_001t__Int__Oint,type,
    abs_abs_int: int > int ).

thf(sy_c_Groups_Oabs__class_Oabs_001t__Rat__Orat,type,
    abs_abs_rat: rat > rat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Code____Numeral__Ointeger,type,
    minus_8373710615458151222nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Code____Numeral__Onatural,type,
    minus_7197305767214868737atural: code_natural > code_natural > code_natural ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Int__Oint,type,
    minus_minus_int: int > int > int ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Nat__Onat,type,
    minus_minus_nat: nat > nat > nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Rat__Orat,type,
    minus_minus_rat: rat > rat > rat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Nat__Onat_J,type,
    minus_minus_set_nat: set_nat > set_nat > set_nat ).

thf(sy_c_Groups_Oone__class_Oone_001t__Code____Numeral__Ointeger,type,
    one_one_Code_integer: code_integer ).

thf(sy_c_Groups_Oone__class_Oone_001t__Code____Numeral__Onatural,type,
    one_one_Code_natural: code_natural ).

thf(sy_c_Groups_Oone__class_Oone_001t__Int__Oint,type,
    one_one_int: int ).

thf(sy_c_Groups_Oone__class_Oone_001t__Nat__Onat,type,
    one_one_nat: nat ).

thf(sy_c_Groups_Oone__class_Oone_001t__Rat__Orat,type,
    one_one_rat: rat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Code____Numeral__Ointeger,type,
    plus_p5714425477246183910nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Code____Numeral__Onatural,type,
    plus_p4538020629002901425atural: code_natural > code_natural > code_natural ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Int__Oint,type,
    plus_plus_int: int > int > int ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Nat__Onat,type,
    plus_plus_nat: nat > nat > nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Num__Onum,type,
    plus_plus_num: num > num > num ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Rat__Orat,type,
    plus_plus_rat: rat > rat > rat ).

thf(sy_c_Groups_Osgn__class_Osgn_001t__Code____Numeral__Ointeger,type,
    sgn_sgn_Code_integer: code_integer > code_integer ).

thf(sy_c_Groups_Osgn__class_Osgn_001t__Int__Oint,type,
    sgn_sgn_int: int > int ).

thf(sy_c_Groups_Osgn__class_Osgn_001t__Rat__Orat,type,
    sgn_sgn_rat: rat > rat ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Code____Numeral__Ointeger,type,
    times_3573771949741848930nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Code____Numeral__Onatural,type,
    times_2397367101498566445atural: code_natural > code_natural > code_natural ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Int__Oint,type,
    times_times_int: int > int > int ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Nat__Onat,type,
    times_times_nat: nat > nat > nat ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Num__Onum,type,
    times_times_num: num > num > num ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Rat__Orat,type,
    times_times_rat: rat > rat > rat ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Code____Numeral__Ointeger,type,
    uminus1351360451143612070nteger: code_integer > code_integer ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Int__Oint,type,
    uminus_uminus_int: int > int ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Rat__Orat,type,
    uminus_uminus_rat: rat > rat ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Set__Oset_It__Nat__Onat_J,type,
    uminus5710092332889474511et_nat: set_nat > set_nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Code____Numeral__Ointeger,type,
    zero_z3403309356797280102nteger: code_integer ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Code____Numeral__Onatural,type,
    zero_z2226904508553997617atural: code_natural ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Int__Oint,type,
    zero_zero_int: int ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Rat__Orat,type,
    zero_zero_rat: rat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Int__Oint_001t__Int__Oint,type,
    groups4538972089207619220nt_int: ( int > int ) > set_int > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001t__Nat__Onat,type,
    groups3542108847815614940at_nat: ( nat > nat ) > set_nat > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Int__Oint_001t__Int__Oint,type,
    groups1705073143266064639nt_int: ( int > int ) > set_int > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Nat__Onat_001t__Int__Oint,type,
    groups705719431365010083at_int: ( nat > int ) > set_nat > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__mult__class_Oprod_001t__Nat__Onat_001t__Nat__Onat,type,
    groups708209901874060359at_nat: ( nat > nat ) > set_nat > nat ).

thf(sy_c_Groups__List_Ocomm__semiring__0__class_Ohorner__sum_001_Eo_001t__Int__Oint,type,
    groups9116527308978886569_o_int: ( $o > int ) > int > list_o > int ).

thf(sy_c_Groups__List_Omonoid__add__class_Osum__list_001t__Nat__Onat,type,
    groups4561878855575611511st_nat: list_nat > nat ).

thf(sy_c_HOL_ONO__MATCH_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger,type,
    nO_MAT8252062027627875367nteger: code_integer > code_integer > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Code____Numeral__Ointeger_001t__Rat__Orat,type,
    nO_MAT7795273704451493282er_rat: code_integer > rat > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    nO_MAT9066612773553876470nteger: int > code_integer > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Int__Oint_001t__Int__Oint,type,
    nO_MATCH_int_int: int > int > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Int__Oint_001t__Nat__Onat,type,
    nO_MATCH_int_nat: int > nat > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Int__Oint_001t__Rat__Orat,type,
    nO_MATCH_int_rat: int > rat > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Nat__Onat_001t__Code____Numeral__Ointeger,type,
    nO_MAT8694959213317031834nteger: nat > code_integer > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Nat__Onat_001t__Int__Oint,type,
    nO_MATCH_nat_int: nat > int > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Nat__Onat_001t__Nat__Onat,type,
    nO_MATCH_nat_nat: nat > nat > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Nat__Onat_001t__Rat__Orat,type,
    nO_MATCH_nat_rat: nat > rat > $o ).

thf(sy_c_HOL_ONO__MATCH_001t__Rat__Orat_001t__Rat__Orat,type,
    nO_MATCH_rat_rat: rat > rat > $o ).

thf(sy_c_HOL_OThe_001t__Int__Oint,type,
    the_int: ( int > $o ) > int ).

thf(sy_c_HOL_OThe_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    the_Pr4378521158711661632nt_int: ( product_prod_int_int > $o ) > product_prod_int_int ).

thf(sy_c_Heap__Time__Monad_OHeap_OHeap_001t__Product____Type__Ounit,type,
    heap_T6183433275982383450t_unit: ( heap_e7401611519738050253t_unit > option8956607266484857688it_nat ) > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Obind_001t__Product____Type__Ounit_001t__Product____Type__Ounit,type,
    heap_T2633723481742716231t_unit: heap_T5738788834812785303t_unit > ( product_unit > heap_T5738788834812785303t_unit ) > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Obind_001t__Product____Type__Ounit_001tf__a,type,
    heap_T757603679106148408unit_a: heap_T5738788834812785303t_unit > ( product_unit > heap_Time_Heap_a ) > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_Obind_001tf__a_001t__Product____Type__Ounit,type,
    heap_T8685611227969916822t_unit: heap_Time_Heap_a > ( a > heap_T5738788834812785303t_unit ) > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Obind_001tf__a_001tf__a,type,
    heap_Time_bind_a_a: heap_Time_Heap_a > ( a > heap_Time_Heap_a ) > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_Oexecute_001t__Product____Type__Ounit,type,
    heap_T875086893843062177t_unit: heap_T5738788834812785303t_unit > heap_e7401611519738050253t_unit > option8956607266484857688it_nat ).

thf(sy_c_Heap__Time__Monad_Olift_001t__Product____Type__Ounit_001t__Product____Type__Ounit,type,
    heap_T7011250591035762645t_unit: ( product_unit > product_unit ) > product_unit > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Olift_001t__Product____Type__Ounit_001tf__a,type,
    heap_T6901581777565460678unit_a: ( product_unit > a ) > product_unit > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_Olift_001tf__a_001tf__a,type,
    heap_Time_lift_a_a: ( a > a ) > a > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_Oraise_001t__Product____Type__Ounit,type,
    heap_T2927564422264180874t_unit: list_char > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Oraise_001tf__a,type,
    heap_Time_raise_a: list_char > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_Oreturn_001t__Product____Type__Ounit,type,
    heap_T7507251653302230130t_unit: product_unit > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Oreturn_001tf__a,type,
    heap_Time_return_a: a > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_Oureturn_001t__Product____Type__Ounit,type,
    heap_T4284346855313245393t_unit: product_unit > heap_T5738788834812785303t_unit ).

thf(sy_c_Heap__Time__Monad_Oureturn_001tf__a,type,
    heap_Time_ureturn_a: a > heap_Time_Heap_a ).

thf(sy_c_Heap__Time__Monad_Owait,type,
    heap_Time_wait: nat > heap_T5738788834812785303t_unit ).

thf(sy_c_If_001t__Code____Numeral__Ointeger,type,
    if_Code_integer: $o > code_integer > code_integer > code_integer ).

thf(sy_c_If_001t__Code____Numeral__Onatural,type,
    if_Code_natural: $o > code_natural > code_natural > code_natural ).

thf(sy_c_If_001t__Heap____Time____Monad__OHeap_It__Product____Type__Ounit_J,type,
    if_Hea8138950348631371857t_unit: $o > heap_T5738788834812785303t_unit > heap_T5738788834812785303t_unit > heap_T5738788834812785303t_unit ).

thf(sy_c_If_001t__Heap____Time____Monad__OHeap_Itf__a_J,type,
    if_Heap_Time_Heap_a: $o > heap_Time_Heap_a > heap_Time_Heap_a > heap_Time_Heap_a ).

thf(sy_c_If_001t__Int__Oint,type,
    if_int: $o > int > int > int ).

thf(sy_c_If_001t__List__Olist_It__Int__Oint_J,type,
    if_list_int: $o > list_int > list_int > list_int ).

thf(sy_c_If_001t__Nat__Onat,type,
    if_nat: $o > nat > nat > nat ).

thf(sy_c_If_001t__Num__Onum,type,
    if_num: $o > num > num > num ).

thf(sy_c_If_001t__Option__Ooption_It__Num__Onum_J,type,
    if_option_num: $o > option_num > option_num > option_num ).

thf(sy_c_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_Eo_J,type,
    if_Pro5737122678794959658eger_o: $o > produc6271795597528267376eger_o > produc6271795597528267376eger_o > produc6271795597528267376eger_o ).

thf(sy_c_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    if_Pro6119634080678213985nteger: $o > produc8923325533196201883nteger > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_If_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    if_Pro3027730157355071871nt_int: $o > product_prod_int_int > product_prod_int_int > product_prod_int_int ).

thf(sy_c_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    if_Pro6206227464963214023at_nat: $o > product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_If_001t__Rat__Orat,type,
    if_rat: $o > rat > rat > rat ).

thf(sy_c_If_001t__Set__Oset_It__Int__Oint_J,type,
    if_set_int: $o > set_int > set_int > set_int ).

thf(sy_c_Infinite__Set_Owellorder__class_Oenumerate_001t__Nat__Onat,type,
    infini8530281810654367211te_nat: set_nat > nat > nat ).

thf(sy_c_Int_OAbs__Integ,type,
    abs_Integ: product_prod_nat_nat > int ).

thf(sy_c_Int_ORep__Integ,type,
    rep_Integ: int > product_prod_nat_nat ).

thf(sy_c_Int_Ocr__int,type,
    cr_int: product_prod_nat_nat > int > $o ).

thf(sy_c_Int_Oint__ge__less__than,type,
    int_ge_less_than: int > set_Pr958786334691620121nt_int ).

thf(sy_c_Int_Oint__ge__less__than2,type,
    int_ge_less_than2: int > set_Pr958786334691620121nt_int ).

thf(sy_c_Int_Ointrel,type,
    intrel: product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_Int_Onat,type,
    nat2: int > nat ).

thf(sy_c_Int_Opcr__int,type,
    pcr_int: product_prod_nat_nat > int > $o ).

thf(sy_c_Int_Opower__int_001t__Rat__Orat,type,
    power_int_rat: rat > int > rat ).

thf(sy_c_Int_Oring__1__class_OInts_001t__Code____Numeral__Ointeger,type,
    ring_11222124179247155820nteger: set_Code_integer ).

thf(sy_c_Int_Oring__1__class_OInts_001t__Int__Oint,type,
    ring_1_Ints_int: set_int ).

thf(sy_c_Int_Oring__1__class_OInts_001t__Rat__Orat,type,
    ring_1_Ints_rat: set_rat ).

thf(sy_c_Int_Oring__1__class_Oof__int_001t__Code____Numeral__Ointeger,type,
    ring_18347121197199848620nteger: int > code_integer ).

thf(sy_c_Int_Oring__1__class_Oof__int_001t__Int__Oint,type,
    ring_1_of_int_int: int > int ).

thf(sy_c_Int_Oring__1__class_Oof__int_001t__Rat__Orat,type,
    ring_1_of_int_rat: int > rat ).

thf(sy_c_Lattices_Oinf__class_Oinf_001_062_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_M_Eo_J,type,
    inf_in3604695632404883862_int_o: ( product_prod_int_int > $o ) > ( product_prod_int_int > $o ) > product_prod_int_int > $o ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Int__Oint,type,
    inf_inf_int: int > int > int ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Nat__Onat,type,
    inf_inf_nat: nat > nat > nat ).

thf(sy_c_Lattices_Osemilattice__neutr__order_001t__Nat__Onat,type,
    semila1623282765462674594er_nat: ( nat > nat > nat ) > nat > ( nat > nat > $o ) > ( nat > nat > $o ) > $o ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Int__Oint,type,
    sup_sup_int: int > int > int ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Nat__Onat,type,
    sup_sup_nat: nat > nat > nat ).

thf(sy_c_Lattices_Osup__class_Osup_001t__Set__Oset_It__Nat__Onat_J,type,
    sup_sup_set_nat: set_nat > set_nat > set_nat ).

thf(sy_c_Lattices__Big_Olinorder__class_OMax_001t__Int__Oint,type,
    lattic8263393255366662781ax_int: set_int > int ).

thf(sy_c_Lattices__Big_Olinorder__class_OMax_001t__Nat__Onat,type,
    lattic8265883725875713057ax_nat: set_nat > nat ).

thf(sy_c_Lifting_OQuotient_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    quotie1194848508323700631at_int: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( product_prod_nat_nat > int ) > ( int > product_prod_nat_nat ) > ( product_prod_nat_nat > int > $o ) > $o ).

thf(sy_c_List_Oappend_001t__Int__Oint,type,
    append_int: list_int > list_int > list_int ).

thf(sy_c_List_Oappend_001t__Nat__Onat,type,
    append_nat: list_nat > list_nat > list_nat ).

thf(sy_c_List_Obutlast_001t__Nat__Onat,type,
    butlast_nat: list_nat > list_nat ).

thf(sy_c_List_Odrop_001t__Nat__Onat,type,
    drop_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Ofilter_001t__Nat__Onat,type,
    filter_nat2: ( nat > $o ) > list_nat > list_nat ).

thf(sy_c_List_Ofold_001t__Int__Oint_001t__Int__Oint,type,
    fold_int_int: ( int > int > int ) > list_int > int > int ).

thf(sy_c_List_Ofold_001t__Nat__Onat_001t__Nat__Onat,type,
    fold_nat_nat: ( nat > nat > nat ) > list_nat > nat > nat ).

thf(sy_c_List_Ofoldr_001_Eo_001t__Nat__Onat,type,
    foldr_o_nat: ( $o > nat > nat ) > list_o > nat > nat ).

thf(sy_c_List_Ofoldr_001t__Int__Oint_001t__Nat__Onat,type,
    foldr_int_nat: ( int > nat > nat ) > list_int > nat > nat ).

thf(sy_c_List_Ofoldr_001t__Nat__Onat_001t__Nat__Onat,type,
    foldr_nat_nat: ( nat > nat > nat ) > list_nat > nat > nat ).

thf(sy_c_List_Ogen__length_001_Eo,type,
    gen_length_o: nat > list_o > nat ).

thf(sy_c_List_Ogen__length_001t__Int__Oint,type,
    gen_length_int: nat > list_int > nat ).

thf(sy_c_List_Ogen__length_001t__Nat__Onat,type,
    gen_length_nat: nat > list_nat > nat ).

thf(sy_c_List_Olast_001t__Nat__Onat,type,
    last_nat: list_nat > nat ).

thf(sy_c_List_Olinorder__class_Osort__key_001t__Int__Oint_001t__Int__Oint,type,
    linord1735203802627413978nt_int: ( int > int ) > list_int > list_int ).

thf(sy_c_List_Olinorder__class_Osort__key_001t__Nat__Onat_001t__Nat__Onat,type,
    linord738340561235409698at_nat: ( nat > nat ) > list_nat > list_nat ).

thf(sy_c_List_Olinorder__class_Osorted__list__of__set_001t__Nat__Onat,type,
    linord2614967742042102400et_nat: set_nat > list_nat ).

thf(sy_c_List_Olist_OCons_001_Eo,type,
    cons_o: $o > list_o > list_o ).

thf(sy_c_List_Olist_OCons_001t__Int__Oint,type,
    cons_int: int > list_int > list_int ).

thf(sy_c_List_Olist_OCons_001t__Nat__Onat,type,
    cons_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Olist_OCons_001t__Num__Onum,type,
    cons_num: num > list_num > list_num ).

thf(sy_c_List_Olist_OCons_001t__Rat__Orat,type,
    cons_rat: rat > list_rat > list_rat ).

thf(sy_c_List_Olist_OCons_001t__String__Ochar,type,
    cons_char: char > list_char > list_char ).

thf(sy_c_List_Olist_ONil_001_Eo,type,
    nil_o: list_o ).

thf(sy_c_List_Olist_ONil_001t__Int__Oint,type,
    nil_int: list_int ).

thf(sy_c_List_Olist_ONil_001t__Nat__Onat,type,
    nil_nat: list_nat ).

thf(sy_c_List_Olist_ONil_001t__Num__Onum,type,
    nil_num: list_num ).

thf(sy_c_List_Olist_ONil_001t__Rat__Orat,type,
    nil_rat: list_rat ).

thf(sy_c_List_Olist_ONil_001t__String__Ochar,type,
    nil_char: list_char ).

thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__Nat__Onat,type,
    map_nat_nat: ( nat > nat ) > list_nat > list_nat ).

thf(sy_c_List_Olist_Oset_001t__Int__Oint,type,
    set_int2: list_int > set_int ).

thf(sy_c_List_Olist_Oset_001t__Nat__Onat,type,
    set_nat2: list_nat > set_nat ).

thf(sy_c_List_Onth_001_Eo,type,
    nth_o: list_o > nat > $o ).

thf(sy_c_List_Onth_001t__Code____Numeral__Ointeger,type,
    nth_Code_integer: list_Code_integer > nat > code_integer ).

thf(sy_c_List_Onth_001t__Int__Oint,type,
    nth_int: list_int > nat > int ).

thf(sy_c_List_Onth_001t__Nat__Onat,type,
    nth_nat: list_nat > nat > nat ).

thf(sy_c_List_Onth_001t__Num__Onum,type,
    nth_num: list_num > nat > num ).

thf(sy_c_List_Onth_001t__Rat__Orat,type,
    nth_rat: list_rat > nat > rat ).

thf(sy_c_List_Onth_001t__String__Ochar,type,
    nth_char: list_char > nat > char ).

thf(sy_c_List_Orotate1_001_Eo,type,
    rotate1_o: list_o > list_o ).

thf(sy_c_List_Orotate1_001t__Int__Oint,type,
    rotate1_int: list_int > list_int ).

thf(sy_c_List_Orotate1_001t__Nat__Onat,type,
    rotate1_nat: list_nat > list_nat ).

thf(sy_c_List_Orotate_001_Eo,type,
    rotate_o: nat > list_o > list_o ).

thf(sy_c_List_Orotate_001t__Int__Oint,type,
    rotate_int: nat > list_int > list_int ).

thf(sy_c_List_Orotate_001t__Nat__Onat,type,
    rotate_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Osorted__wrt_001_Eo,type,
    sorted_wrt_o: ( $o > $o > $o ) > list_o > $o ).

thf(sy_c_List_Osorted__wrt_001t__Code____Numeral__Ointeger,type,
    sorted710888440204495920nteger: ( code_integer > code_integer > $o ) > list_Code_integer > $o ).

thf(sy_c_List_Osorted__wrt_001t__Int__Oint,type,
    sorted_wrt_int: ( int > int > $o ) > list_int > $o ).

thf(sy_c_List_Osorted__wrt_001t__Nat__Onat,type,
    sorted_wrt_nat: ( nat > nat > $o ) > list_nat > $o ).

thf(sy_c_List_Osorted__wrt_001t__Num__Onum,type,
    sorted_wrt_num: ( num > num > $o ) > list_num > $o ).

thf(sy_c_List_Osorted__wrt_001t__Rat__Orat,type,
    sorted_wrt_rat: ( rat > rat > $o ) > list_rat > $o ).

thf(sy_c_List_Otake_001t__Nat__Onat,type,
    take_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Oupt,type,
    upt: nat > nat > list_nat ).

thf(sy_c_List_Oupto,type,
    upto: int > int > list_int ).

thf(sy_c_List_Oupto__aux,type,
    upto_aux: int > int > list_int > list_int ).

thf(sy_c_List_Oupto__rel,type,
    upto_rel: product_prod_int_int > product_prod_int_int > $o ).

thf(sy_c_Misc_Oslice_001_Eo,type,
    slice_o: nat > nat > list_o > list_o ).

thf(sy_c_Misc_Oslice_001t__Int__Oint,type,
    slice_int: nat > nat > list_int > list_int ).

thf(sy_c_Misc_Oslice_001t__Nat__Onat,type,
    slice_nat: nat > nat > list_nat > list_nat ).

thf(sy_c_Misc_Oslice_001t__String__Ochar,type,
    slice_char: nat > nat > list_char > list_char ).

thf(sy_c_Multiset_Omset_001t__Nat__Onat,type,
    mset_nat: list_nat > multiset_nat ).

thf(sy_c_Multiset_Omset__set_001t__Nat__Onat,type,
    mset_set_nat: set_nat > multiset_nat ).

thf(sy_c_Nat_OSuc,type,
    suc: nat > nat ).

thf(sy_c_Nat_Ocompow_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    compow_nat_nat: nat > ( nat > nat ) > nat > nat ).

thf(sy_c_Nat_Onat_Ocase__nat_001_Eo,type,
    case_nat_o: $o > ( nat > $o ) > nat > $o ).

thf(sy_c_Nat_Onat_Ocase__nat_001t__Nat__Onat,type,
    case_nat_nat: nat > ( nat > nat ) > nat > nat ).

thf(sy_c_Nat_Onat_Ocase__nat_001t__Option__Ooption_It__Num__Onum_J,type,
    case_nat_option_num: option_num > ( nat > option_num ) > nat > option_num ).

thf(sy_c_Nat_Onat_Opred,type,
    pred: nat > nat ).

thf(sy_c_Nat_Osemiring__1__class_ONats_001t__Int__Oint,type,
    semiring_1_Nats_int: set_int ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Code____Numeral__Ointeger,type,
    semiri4939895301339042750nteger: nat > code_integer ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Code____Numeral__Onatural,type,
    semiri3763490453095760265atural: nat > code_natural ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Int__Oint,type,
    semiri1314217659103216013at_int: nat > int ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Nat__Onat,type,
    semiri1316708129612266289at_nat: nat > nat ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Rat__Orat,type,
    semiri681578069525770553at_rat: nat > rat ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat__aux_001t__Code____Numeral__Ointeger,type,
    semiri4055485073559036834nteger: ( code_integer > code_integer ) > nat > code_integer > code_integer ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat__aux_001t__Code____Numeral__Onatural,type,
    semiri2879080225315754349atural: ( code_natural > code_natural ) > nat > code_natural > code_natural ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat__aux_001t__Int__Oint,type,
    semiri8420488043553186161ux_int: ( int > int ) > nat > int > int ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat__aux_001t__Nat__Onat,type,
    semiri8422978514062236437ux_nat: ( nat > nat ) > nat > nat > nat ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat__aux_001t__Rat__Orat,type,
    semiri7787848453975740701ux_rat: ( rat > rat ) > nat > rat > rat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_I_Eo_J,type,
    size_size_list_o: list_o > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Code____Numeral__Ointeger_J,type,
    size_s3445333598471063425nteger: list_Code_integer > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Int__Oint_J,type,
    size_size_list_int: list_int > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Nat__Onat_J,type,
    size_size_list_nat: list_nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Num__Onum_J,type,
    size_size_list_num: list_num > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Rat__Orat_J,type,
    size_size_list_rat: list_rat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__String__Ochar_J,type,
    size_size_list_char: list_char > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Num__Onum,type,
    size_size_num: num > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__String__Ochar,type,
    size_size_char: char > nat ).

thf(sy_c_Nat__Bijection_Olist__decode,type,
    nat_list_decode: nat > list_nat ).

thf(sy_c_Nat__Bijection_Olist__decode__rel,type,
    nat_list_decode_rel: nat > nat > $o ).

thf(sy_c_Nat__Bijection_Olist__encode,type,
    nat_list_encode: list_nat > nat ).

thf(sy_c_Nat__Bijection_Olist__encode__rel,type,
    nat_list_encode_rel: list_nat > list_nat > $o ).

thf(sy_c_Nat__Bijection_Oprod__decode,type,
    nat_prod_decode: nat > product_prod_nat_nat ).

thf(sy_c_Nat__Bijection_Oprod__decode__aux,type,
    nat_prod_decode_aux: nat > nat > product_prod_nat_nat ).

thf(sy_c_Nat__Bijection_Oprod__decode__aux__rel,type,
    nat_pr5047031295181774490ux_rel: product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_Nat__Bijection_Oprod__encode,type,
    nat_prod_encode: product_prod_nat_nat > nat ).

thf(sy_c_Nat__Bijection_Oset__decode,type,
    nat_set_decode: nat > set_nat ).

thf(sy_c_Nat__Bijection_Oset__encode,type,
    nat_set_encode: set_nat > nat ).

thf(sy_c_Nat__Bijection_Otriangle,type,
    nat_triangle: nat > nat ).

thf(sy_c_Num_OBitM,type,
    bitM: num > num ).

thf(sy_c_Num_Oinc,type,
    inc: num > num ).

thf(sy_c_Num_Oneg__numeral__class_Odbl_001t__Code____Numeral__Ointeger,type,
    neg_nu8804712462038260780nteger: code_integer > code_integer ).

thf(sy_c_Num_Oneg__numeral__class_Odbl_001t__Int__Oint,type,
    neg_numeral_dbl_int: int > int ).

thf(sy_c_Num_Oneg__numeral__class_Odbl_001t__Rat__Orat,type,
    neg_numeral_dbl_rat: rat > rat ).

thf(sy_c_Num_Oneg__numeral__class_Odbl__dec_001t__Code____Numeral__Ointeger,type,
    neg_nu7757733837767384882nteger: code_integer > code_integer ).

thf(sy_c_Num_Oneg__numeral__class_Odbl__dec_001t__Int__Oint,type,
    neg_nu3811975205180677377ec_int: int > int ).

thf(sy_c_Num_Oneg__numeral__class_Odbl__dec_001t__Rat__Orat,type,
    neg_nu3179335615603231917ec_rat: rat > rat ).

thf(sy_c_Num_Oneg__numeral__class_Odbl__inc_001t__Code____Numeral__Ointeger,type,
    neg_nu5831290666863070958nteger: code_integer > code_integer ).

thf(sy_c_Num_Oneg__numeral__class_Odbl__inc_001t__Int__Oint,type,
    neg_nu5851722552734809277nc_int: int > int ).

thf(sy_c_Num_Oneg__numeral__class_Odbl__inc_001t__Rat__Orat,type,
    neg_nu5219082963157363817nc_rat: rat > rat ).

thf(sy_c_Num_Oneg__numeral__class_Osub_001t__Code____Numeral__Ointeger,type,
    neg_nu5755505904847501662nteger: num > num > code_integer ).

thf(sy_c_Num_Oneg__numeral__class_Osub_001t__Int__Oint,type,
    neg_numeral_sub_int: num > num > int ).

thf(sy_c_Num_Onum_OBit0,type,
    bit0: num > num ).

thf(sy_c_Num_Onum_OBit1,type,
    bit1: num > num ).

thf(sy_c_Num_Onum_OOne,type,
    one: num ).

thf(sy_c_Num_Onum_Ocase__num_001t__Option__Ooption_It__Num__Onum_J,type,
    case_num_option_num: option_num > ( num > option_num ) > ( num > option_num ) > num > option_num ).

thf(sy_c_Num_Onum_Osize__num,type,
    size_num: num > nat ).

thf(sy_c_Num_Onum__of__nat,type,
    num_of_nat: nat > num ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Code____Numeral__Ointeger,type,
    numera6620942414471956472nteger: num > code_integer ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Code____Numeral__Onatural,type,
    numera5444537566228673987atural: num > code_natural ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Int__Oint,type,
    numeral_numeral_int: num > int ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Nat__Onat,type,
    numeral_numeral_nat: num > nat ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Rat__Orat,type,
    numeral_numeral_rat: num > rat ).

thf(sy_c_Num_Opow,type,
    pow: num > num > num ).

thf(sy_c_Num_Opred__numeral,type,
    pred_numeral: num > nat ).

thf(sy_c_Num_Osqr,type,
    sqr: num > num ).

thf(sy_c_Option_Ooption_ONone_001t__Num__Onum,type,
    none_num: option_num ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    none_P9117596204409417319it_nat: option8956607266484857688it_nat ).

thf(sy_c_Option_Ooption_OSome_001t__Num__Onum,type,
    some_num: num > option_num ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__Product____Type__Ounit_Mt__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J_J,type,
    some_P1914260805536162275it_nat: produc8664842809031399944it_nat > option8956607266484857688it_nat ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Int__Oint_001t__Num__Onum,type,
    case_option_int_num: int > ( num > int ) > option_num > int ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Num__Onum_001t__Num__Onum,type,
    case_option_num_num: num > ( num > num ) > option_num > num ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Option__Ooption_It__Num__Onum_J_001t__Num__Onum,type,
    case_o6005452278849405969um_num: option_num > ( num > option_num ) > option_num > option_num ).

thf(sy_c_Option_Ooption_Omap__option_001t__Num__Onum_001t__Num__Onum,type,
    map_option_num_num: ( num > num ) > option_num > option_num ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Nat__Onat,type,
    bot_bot_nat: nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Int__Oint_J,type,
    bot_bot_set_int: set_int ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Nat__Onat_J,type,
    bot_bot_set_nat: set_nat ).

thf(sy_c_Orderings_Oord__class_OLeast_001t__Nat__Onat,type,
    ord_Least_nat: ( nat > $o ) > nat ).

thf(sy_c_Orderings_Oord__class_Oless_001_Eo,type,
    ord_less_o: $o > $o > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Code____Numeral__Ointeger,type,
    ord_le6747313008572928689nteger: code_integer > code_integer > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Code____Numeral__Onatural,type,
    ord_le5570908160329646204atural: code_natural > code_natural > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Int__Oint,type,
    ord_less_int: int > int > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Nat__Onat,type,
    ord_less_nat: nat > nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Num__Onum,type,
    ord_less_num: num > num > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Rat__Orat,type,
    ord_less_rat: rat > rat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Nat__Onat_J,type,
    ord_less_set_nat: set_nat > set_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_I_Eo_Mt__Int__Oint_J,type,
    ord_less_eq_o_int: ( $o > int ) > ( $o > int ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_I_Eo_Mt__Nat__Onat_J,type,
    ord_less_eq_o_nat: ( $o > nat ) > ( $o > nat ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_I_Eo_Mt__Num__Onum_J,type,
    ord_less_eq_o_num: ( $o > num ) > ( $o > num ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_I_Eo_Mt__Rat__Orat_J,type,
    ord_less_eq_o_rat: ( $o > rat ) > ( $o > rat ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_062_I_Eo_Mt__Set__Oset_It__Nat__Onat_J_J,type,
    ord_le7022414076629706543et_nat: ( $o > set_nat ) > ( $o > set_nat ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001_Eo,type,
    ord_less_eq_o: $o > $o > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Code____Numeral__Ointeger,type,
    ord_le3102999989581377725nteger: code_integer > code_integer > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Code____Numeral__Onatural,type,
    ord_le1926595141338095240atural: code_natural > code_natural > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Filter__Ofilter_It__Nat__Onat_J,type,
    ord_le2510731241096832064er_nat: filter_nat > filter_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Int__Oint,type,
    ord_less_eq_int: int > int > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Nat__Onat,type,
    ord_less_eq_nat: nat > nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Num__Onum,type,
    ord_less_eq_num: num > num > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Rat__Orat,type,
    ord_less_eq_rat: rat > rat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Nat__Onat_J,type,
    ord_less_eq_set_nat: set_nat > set_nat > $o ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Code____Numeral__Ointeger,type,
    ord_max_Code_integer: code_integer > code_integer > code_integer ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Code____Numeral__Onatural,type,
    ord_max_Code_natural: code_natural > code_natural > code_natural ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Int__Oint,type,
    ord_max_int: int > int > int ).

thf(sy_c_Orderings_Oord__class_Omax_001t__Nat__Onat,type,
    ord_max_nat: nat > nat > nat ).

thf(sy_c_Orderings_Oord__class_Omin_001t__Code____Numeral__Ointeger,type,
    ord_min_Code_integer: code_integer > code_integer > code_integer ).

thf(sy_c_Orderings_Oord__class_Omin_001t__Code____Numeral__Onatural,type,
    ord_min_Code_natural: code_natural > code_natural > code_natural ).

thf(sy_c_Orderings_Oord__class_Omin_001t__Int__Oint,type,
    ord_min_int: int > int > int ).

thf(sy_c_Orderings_Oord__class_Omin_001t__Nat__Onat,type,
    ord_min_nat: nat > nat > nat ).

thf(sy_c_Orderings_Oorder__class_OGreatest_001t__Int__Oint,type,
    order_Greatest_int: ( int > $o ) > int ).

thf(sy_c_Orderings_Oorder__class_OGreatest_001t__Nat__Onat,type,
    order_Greatest_nat: ( nat > $o ) > nat ).

thf(sy_c_Orderings_Oorder__class_OGreatest_001t__Num__Onum,type,
    order_Greatest_num: ( num > $o ) > num ).

thf(sy_c_Orderings_Oorder__class_OGreatest_001t__Rat__Orat,type,
    order_Greatest_rat: ( rat > $o ) > rat ).

thf(sy_c_Orderings_Oorder__class_OGreatest_001t__Set__Oset_It__Nat__Onat_J,type,
    order_5724808138429204845et_nat: ( set_nat > $o ) > set_nat ).

thf(sy_c_Orderings_Oorder__class_Omono_001t__Nat__Onat_001t__Nat__Onat,type,
    order_mono_nat_nat: ( nat > nat ) > $o ).

thf(sy_c_Orderings_Oordering__top_001t__Nat__Onat,type,
    ordering_top_nat: ( nat > nat > $o ) > ( nat > nat > $o ) > nat > $o ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Int__Oint_J,type,
    top_top_set_int: set_int ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Nat__Onat_J,type,
    top_top_set_nat: set_nat ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__Product____Type__Ounit_J,type,
    top_to1996260823553986621t_unit: set_Product_unit ).

thf(sy_c_Orderings_Otop__class_Otop_001t__Set__Oset_It__String__Ochar_J,type,
    top_top_set_char: set_char ).

thf(sy_c_Power_Opower__class_Opower_001t__Code____Numeral__Ointeger,type,
    power_8256067586552552935nteger: code_integer > nat > code_integer ).

thf(sy_c_Power_Opower__class_Opower_001t__Code____Numeral__Onatural,type,
    power_7079662738309270450atural: code_natural > nat > code_natural ).

thf(sy_c_Power_Opower__class_Opower_001t__Int__Oint,type,
    power_power_int: int > nat > int ).

thf(sy_c_Power_Opower__class_Opower_001t__Nat__Onat,type,
    power_power_nat: nat > nat > nat ).

thf(sy_c_Power_Opower__class_Opower_001t__Rat__Orat,type,
    power_power_rat: rat > nat > rat ).

thf(sy_c_Product__Type_OPair_001t__Code____Numeral__Ointeger_001_Eo,type,
    produc6677183202524767010eger_o: code_integer > $o > produc6271795597528267376eger_o ).

thf(sy_c_Product__Type_OPair_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger,type,
    produc1086072967326762835nteger: code_integer > code_integer > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_OPair_001t__Code____Numeral__Onatural_001t__Code____Numeral__Onatural,type,
    produc3574140220909816553atural: code_natural > code_natural > produc7822875418678951345atural ).

thf(sy_c_Product__Type_OPair_001t__Code____Numeral__Onatural_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    produc6639722614265839536atural: code_natural > produc7822875418678951345atural > produc5835291356934675326atural ).

thf(sy_c_Product__Type_OPair_001t__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_001t__Nat__Onat,type,
    produc584006145561248582it_nat: heap_e7401611519738050253t_unit > nat > produc6653097349344004940it_nat ).

thf(sy_c_Product__Type_OPair_001t__Int__Oint_001t__Int__Oint,type,
    product_Pair_int_int: int > int > product_prod_int_int ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Nat__Onat,type,
    product_Pair_nat_nat: nat > nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Num__Onum,type,
    product_Pair_nat_num: nat > num > product_prod_nat_num ).

thf(sy_c_Product__Type_OPair_001t__Num__Onum_001t__Num__Onum,type,
    product_Pair_num_num: num > num > product_prod_num_num ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    produc4480994950612372183atural: produc7822875418678951345atural > produc7822875418678951345atural > produc6756470014200349799atural ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc6161850002892822231at_nat: product_prod_nat_nat > product_prod_nat_nat > produc859450856879609959at_nat ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Ounit_001t__Product____Type__Oprod_It__Heap__Oheap__Oheap____ext_It__Product____Type__Ounit_J_Mt__Nat__Onat_J,type,
    produc7133225469290080770it_nat: product_unit > produc6653097349344004940it_nat > produc8664842809031399944it_nat ).

thf(sy_c_Product__Type_OUnity,type,
    product_Unity: product_unit ).

thf(sy_c_Product__Type_Oapsnd_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger,type,
    produc6499014454317279255nteger: ( code_integer > code_integer ) > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001_Eo_001t__String__Ochar,type,
    produc4188289175737317920o_char: ( code_integer > $o > char ) > produc6271795597528267376eger_o > char ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Int__Oint,type,
    produc1553301316500091796er_int: ( code_integer > code_integer > int ) > produc8923325533196201883nteger > int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Nat__Onat,type,
    produc1555791787009142072er_nat: ( code_integer > code_integer > nat ) > produc8923325533196201883nteger > nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Num__Onum,type,
    produc7336495610019696514er_num: ( code_integer > code_integer > num ) > produc8923325533196201883nteger > num ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_Eo_J,type,
    produc9125791028180074456eger_o: ( code_integer > code_integer > produc6271795597528267376eger_o ) > produc8923325533196201883nteger > produc6271795597528267376eger_o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J,type,
    produc6916734918728496179nteger: ( code_integer > code_integer > produc8923325533196201883nteger ) > produc8923325533196201883nteger > produc8923325533196201883nteger ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Code____Numeral__Onatural_001t__Code____Numeral__Onatural_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J,type,
    produc8282080750456430313atural: ( code_natural > code_natural > produc6756470014200349799atural ) > produc7822875418678951345atural > produc6756470014200349799atural ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Int__Oint_001t__Int__Oint_001_Eo,type,
    produc4947309494688390418_int_o: ( int > int > $o ) > product_prod_int_int > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Int__Oint_001t__Int__Oint_001t__Int__Oint,type,
    produc8211389475949308722nt_int: ( int > int > int ) > product_prod_int_int > int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Int__Oint_001t__Int__Oint_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    produc4245557441103728435nt_int: ( int > int > product_prod_int_int ) > product_prod_int_int > product_prod_int_int ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_M_Eo_J,type,
    produc8739625826339149834_nat_o: ( nat > nat > product_prod_nat_nat > $o ) > product_prod_nat_nat > product_prod_nat_nat > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001_062_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc27273713700761075at_nat: ( nat > nat > product_prod_nat_nat > product_prod_nat_nat ) > product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001_Eo,type,
    produc6081775807080527818_nat_o: ( nat > nat > $o ) > product_prod_nat_nat > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001t__List__Olist_It__Nat__Onat_J,type,
    produc2761476792215241774st_nat: ( nat > nat > list_nat ) > product_prod_nat_nat > list_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001t__Nat__Onat,type,
    produc6842872674320459806at_nat: ( nat > nat > nat ) > product_prod_nat_nat > nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc2626176000494625587at_nat: ( nat > nat > product_prod_nat_nat ) > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Nat__Onat_001t__Num__Onum_001t__Option__Ooption_It__Num__Onum_J,type,
    produc478579273971653890on_num: ( nat > num > option_num ) > product_prod_nat_num > option_num ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger,type,
    produc8508995932063986495nteger: produc8923325533196201883nteger > code_integer ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Int__Oint_001t__Int__Oint,type,
    product_fst_int_int: product_prod_int_int > int ).

thf(sy_c_Product__Type_Oprod_Ofst_001t__Nat__Onat_001t__Nat__Onat,type,
    product_fst_nat_nat: product_prod_nat_nat > nat ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger,type,
    produc6174133586879617921nteger: produc8923325533196201883nteger > code_integer ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Code____Numeral__Onatural_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    produc6591912806276919810atural: produc5835291356934675326atural > produc7822875418678951345atural ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Int__Oint_001t__Int__Oint,type,
    product_snd_int_int: product_prod_int_int > int ).

thf(sy_c_Product__Type_Oprod_Osnd_001t__Nat__Onat_001t__Nat__Onat,type,
    product_snd_nat_nat: product_prod_nat_nat > nat ).

thf(sy_c_Product__Type_Oscomp_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001t__Code____Numeral__Onatural_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J_J,type,
    produc5538323210962509403atural: ( produc7822875418678951345atural > produc5835291356934675326atural ) > ( code_natural > produc7822875418678951345atural > produc5835291356934675326atural ) > produc7822875418678951345atural > produc5835291356934675326atural ).

thf(sy_c_Random_Oinc__shift,type,
    inc_shift: code_natural > code_natural > code_natural ).

thf(sy_c_Random_Oiterate_001t__Code____Numeral__Onatural_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    iterat8892046348760725948atural: code_natural > ( code_natural > produc7822875418678951345atural > produc5835291356934675326atural ) > code_natural > produc7822875418678951345atural > produc5835291356934675326atural ).

thf(sy_c_Random_Olog,type,
    log: code_natural > code_natural > code_natural ).

thf(sy_c_Random_Olog__rel,type,
    log_rel: produc7822875418678951345atural > produc7822875418678951345atural > $o ).

thf(sy_c_Random_Ominus__shift,type,
    minus_shift: code_natural > code_natural > code_natural > code_natural ).

thf(sy_c_Random_Onext,type,
    next: produc7822875418678951345atural > produc5835291356934675326atural ).

thf(sy_c_Random_Orange,type,
    range: code_natural > produc7822875418678951345atural > produc5835291356934675326atural ).

thf(sy_c_Random_Osplit__seed,type,
    split_seed: produc7822875418678951345atural > produc6756470014200349799atural ).

thf(sy_c_Rat_OAbs__Rat,type,
    abs_Rat: product_prod_int_int > rat ).

thf(sy_c_Rat_OFract,type,
    fract: int > int > rat ).

thf(sy_c_Rat_OFrct,type,
    frct: product_prod_int_int > rat ).

thf(sy_c_Rat_ORep__Rat,type,
    rep_Rat: rat > product_prod_int_int ).

thf(sy_c_Rat_Ocr__rat,type,
    cr_rat: product_prod_int_int > rat > $o ).

thf(sy_c_Rat_Onormalize,type,
    normalize: product_prod_int_int > product_prod_int_int ).

thf(sy_c_Rat_Oof__int,type,
    of_int: int > rat ).

thf(sy_c_Rat_Opcr__rat,type,
    pcr_rat: product_prod_int_int > rat > $o ).

thf(sy_c_Rat_Opositive,type,
    positive: rat > $o ).

thf(sy_c_Rat_Oquotient__of,type,
    quotient_of: rat > product_prod_int_int ).

thf(sy_c_Rat_Orat_OAbs__rat,type,
    abs_rat: set_Pr958786334691620121nt_int > rat ).

thf(sy_c_Rat_Orat_ORep__rat,type,
    rep_rat: rat > set_Pr958786334691620121nt_int ).

thf(sy_c_Rat_Oratrel,type,
    ratrel: product_prod_int_int > product_prod_int_int > $o ).

thf(sy_c_Ref__Time_Ochange_001t__Product____Type__Ounit,type,
    ref_ch7259622376331601608t_unit: ( product_unit > product_unit ) > ref_Product_unit > heap_T5738788834812785303t_unit ).

thf(sy_c_Ref__Time_Olookup_001t__Product____Type__Ounit,type,
    ref_lo7930775386976318366t_unit: ref_Product_unit > heap_T5738788834812785303t_unit ).

thf(sy_c_Ref__Time_Oupdate_001t__Product____Type__Ounit,type,
    ref_up627237114476368303t_unit: ref_Product_unit > product_unit > heap_T5738788834812785303t_unit ).

thf(sy_c_Refine__Imp__Hol_Oassert_H,type,
    refine_Imp_assert: $o > heap_T5738788834812785303t_unit ).

thf(sy_c_Refine__Imp__Hol_Orefines_001t__Product____Type__Ounit,type,
    refine451278484176762712t_unit: heap_T5738788834812785303t_unit > heap_T5738788834812785303t_unit > $o ).

thf(sy_c_Refine__Imp__Hol_Orefines_001tf__a,type,
    refine_Imp_refines_a: heap_Time_Heap_a > heap_Time_Heap_a > $o ).

thf(sy_c_Relation_ODomainp_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    domain452967906960104687nteger: ( int > code_integer > $o ) > int > $o ).

thf(sy_c_Relation_ODomainp_001t__Int__Oint_001t__Int__Oint,type,
    domainp_int_int: ( int > int > $o ) > int > $o ).

thf(sy_c_Relation_ODomainp_001t__Nat__Onat_001t__Nat__Onat,type,
    domainp_nat_nat: ( nat > nat > $o ) > nat > $o ).

thf(sy_c_Relation_ODomainp_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Rat__Orat,type,
    domain9213661015745956397nt_rat: ( product_prod_int_int > rat > $o ) > product_prod_int_int > $o ).

thf(sy_c_Relation_ODomainp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    domain7287725470393535433at_int: ( product_prod_nat_nat > int > $o ) > product_prod_nat_nat > $o ).

thf(sy_c_Relation_Orelcompp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    relcom8911704206367525917at_int: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > ( product_prod_nat_nat > int > $o ) > product_prod_nat_nat > int > $o ).

thf(sy_c_Rings_Oalgebraic__semidom__class_Ocoprime_001t__Int__Oint,type,
    algebr932160517623751201me_int: int > int > $o ).

thf(sy_c_Rings_Oalgebraic__semidom__class_Ocoprime_001t__Nat__Onat,type,
    algebr934650988132801477me_nat: nat > nat > $o ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Code____Numeral__Ointeger,type,
    divide6298287555418463151nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Code____Numeral__Onatural,type,
    divide5121882707175180666atural: code_natural > code_natural > code_natural ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Int__Oint,type,
    divide_divide_int: int > int > int ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Nat__Onat,type,
    divide_divide_nat: nat > nat > nat ).

thf(sy_c_Rings_Odivide__class_Odivide_001t__Rat__Orat,type,
    divide_divide_rat: rat > rat > rat ).

thf(sy_c_Rings_Odvd__class_Odvd_001t__Code____Numeral__Ointeger,type,
    dvd_dvd_Code_integer: code_integer > code_integer > $o ).

thf(sy_c_Rings_Odvd__class_Odvd_001t__Int__Oint,type,
    dvd_dvd_int: int > int > $o ).

thf(sy_c_Rings_Odvd__class_Odvd_001t__Nat__Onat,type,
    dvd_dvd_nat: nat > nat > $o ).

thf(sy_c_Rings_Omodulo__class_Omodulo_001t__Code____Numeral__Ointeger,type,
    modulo364778990260209775nteger: code_integer > code_integer > code_integer ).

thf(sy_c_Rings_Omodulo__class_Omodulo_001t__Code____Numeral__Onatural,type,
    modulo8411746178871703098atural: code_natural > code_natural > code_natural ).

thf(sy_c_Rings_Omodulo__class_Omodulo_001t__Int__Oint,type,
    modulo_modulo_int: int > int > int ).

thf(sy_c_Rings_Omodulo__class_Omodulo_001t__Nat__Onat,type,
    modulo_modulo_nat: nat > nat > nat ).

thf(sy_c_Rings_Ozero__neq__one__class_Oof__bool_001t__Code____Numeral__Ointeger,type,
    zero_n356916108424825756nteger: $o > code_integer ).

thf(sy_c_Rings_Ozero__neq__one__class_Oof__bool_001t__Int__Oint,type,
    zero_n2684676970156552555ol_int: $o > int ).

thf(sy_c_Rings_Ozero__neq__one__class_Oof__bool_001t__Nat__Onat,type,
    zero_n2687167440665602831ol_nat: $o > nat ).

thf(sy_c_Set_OCollect_001t__Int__Oint,type,
    collect_int: ( int > $o ) > set_int ).

thf(sy_c_Set_OCollect_001t__List__Olist_It__Nat__Onat_J,type,
    collect_list_nat: ( list_nat > $o ) > set_list_nat ).

thf(sy_c_Set_OCollect_001t__Nat__Onat,type,
    collect_nat: ( nat > $o ) > set_nat ).

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    collec213857154873943460nt_int: ( product_prod_int_int > $o ) > set_Pr958786334691620121nt_int ).

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    collec3392354462482085612at_nat: ( product_prod_nat_nat > $o ) > set_Pr1261947904930325089at_nat ).

thf(sy_c_Set_OCollect_001t__Set__Oset_It__Nat__Onat_J,type,
    collect_set_nat: ( set_nat > $o ) > set_set_nat ).

thf(sy_c_Set_OCollect_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    collec5210948495886036740nt_int: ( set_Pr958786334691620121nt_int > $o ) > set_se6260736226359567993nt_int ).

thf(sy_c_Set_OPow_001t__Nat__Onat,type,
    pow_nat: set_nat > set_set_nat ).

thf(sy_c_Set_Oimage_001t__Code____Numeral__Ointeger_001t__Code____Numeral__Ointeger,type,
    image_4470545334726330049nteger: ( code_integer > code_integer ) > set_Code_integer > set_Code_integer ).

thf(sy_c_Set_Oimage_001t__Int__Oint_001t__Int__Oint,type,
    image_int_int: ( int > int ) > set_int > set_int ).

thf(sy_c_Set_Oimage_001t__Int__Oint_001t__Nat__Onat,type,
    image_int_nat: ( int > nat ) > set_int > set_nat ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Code____Numeral__Ointeger,type,
    image_1215581382706833972nteger: ( nat > code_integer ) > set_nat > set_Code_integer ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Int__Oint,type,
    image_nat_int: ( nat > int ) > set_nat > set_int ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Nat__Onat,type,
    image_nat_nat: ( nat > nat ) > set_nat > set_nat ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Set__Oset_It__Nat__Onat_J,type,
    image_nat_set_nat: ( nat > set_nat ) > set_nat > set_set_nat ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__String__Ochar,type,
    image_nat_char: ( nat > char ) > set_nat > set_char ).

thf(sy_c_Set_Oimage_001t__String__Ochar_001t__Nat__Onat,type,
    image_char_nat: ( char > nat ) > set_char > set_nat ).

thf(sy_c_Set_Oinsert_001t__Int__Oint,type,
    insert_int: int > set_int > set_int ).

thf(sy_c_Set_Oinsert_001t__Nat__Onat,type,
    insert_nat: nat > set_nat > set_nat ).

thf(sy_c_Set_Ovimage_001t__Nat__Onat_001t__Nat__Onat,type,
    vimage_nat_nat: ( nat > nat ) > set_nat > set_nat ).

thf(sy_c_Set__Interval_Ofold__atLeastAtMost__nat_001t__Code____Numeral__Ointeger,type,
    set_fo1084959871951514735nteger: ( nat > code_integer > code_integer ) > nat > nat > code_integer > code_integer ).

thf(sy_c_Set__Interval_Ofold__atLeastAtMost__nat_001t__Code____Numeral__Onatural,type,
    set_fo9131927060563008058atural: ( nat > code_natural > code_natural ) > nat > nat > code_natural > code_natural ).

thf(sy_c_Set__Interval_Ofold__atLeastAtMost__nat_001t__Int__Oint,type,
    set_fo2581907887559384638at_int: ( nat > int > int ) > nat > nat > int > int ).

thf(sy_c_Set__Interval_Ofold__atLeastAtMost__nat_001t__Nat__Onat,type,
    set_fo2584398358068434914at_nat: ( nat > nat > nat ) > nat > nat > nat > nat ).

thf(sy_c_Set__Interval_Ofold__atLeastAtMost__nat_001t__Rat__Orat,type,
    set_fo1949268297981939178at_rat: ( nat > rat > rat ) > nat > nat > rat > rat ).

thf(sy_c_Set__Interval_Oord__class_OatLeastAtMost_001t__Code____Numeral__Ointeger,type,
    set_or189985376899183464nteger: code_integer > code_integer > set_Code_integer ).

thf(sy_c_Set__Interval_Oord__class_OatLeastAtMost_001t__Int__Oint,type,
    set_or1266510415728281911st_int: int > int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OatLeastAtMost_001t__Nat__Onat,type,
    set_or1269000886237332187st_nat: nat > nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OatLeastLessThan_001t__Code____Numeral__Ointeger,type,
    set_or8404916559141939852nteger: code_integer > code_integer > set_Code_integer ).

thf(sy_c_Set__Interval_Oord__class_OatLeastLessThan_001t__Int__Oint,type,
    set_or4662586982721622107an_int: int > int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OatLeastLessThan_001t__Nat__Onat,type,
    set_or4665077453230672383an_nat: nat > nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OatLeast_001t__Nat__Onat,type,
    set_ord_atLeast_nat: nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OatMost_001t__Nat__Onat,type,
    set_ord_atMost_nat: nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanAtMost_001t__Code____Numeral__Ointeger,type,
    set_or2715278749043346189nteger: code_integer > code_integer > set_Code_integer ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanAtMost_001t__Int__Oint,type,
    set_or6656581121297822940st_int: int > int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanAtMost_001t__Nat__Onat,type,
    set_or6659071591806873216st_nat: nat > nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanLessThan_001t__Code____Numeral__Ointeger,type,
    set_or4266950643985792945nteger: code_integer > code_integer > set_Code_integer ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanLessThan_001t__Int__Oint,type,
    set_or5832277885323065728an_int: int > int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThanLessThan_001t__Nat__Onat,type,
    set_or5834768355832116004an_nat: nat > nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThan_001t__Nat__Onat,type,
    set_or1210151606488870762an_nat: nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Nat__Onat,type,
    set_ord_lessThan_nat: nat > set_nat ).

thf(sy_c_String_Ochar_OChar,type,
    char2: $o > $o > $o > $o > $o > $o > $o > $o > char ).

thf(sy_c_String_Ochar_Osize__char,type,
    size_char: char > nat ).

thf(sy_c_String_Ochar__of__integer,type,
    char_of_integer: code_integer > char ).

thf(sy_c_String_Ocomm__semiring__1__class_Oof__char_001t__Nat__Onat,type,
    comm_s629917340098488124ar_nat: char > nat ).

thf(sy_c_String_Ointeger__of__char,type,
    integer_of_char: char > code_integer ).

thf(sy_c_String_Ounique__euclidean__semiring__with__bit__operations__class_Ochar__of_001t__Nat__Onat,type,
    unique3096191561947761185of_nat: nat > char ).

thf(sy_c_Time__Reasoning_OEQ_001_Eo,type,
    time_EQ_o: $o > $o > $o ).

thf(sy_c_Time__Reasoning_OTBOUND_001t__Product____Type__Ounit,type,
    time_T7469515765551943773t_unit: heap_T5738788834812785303t_unit > nat > $o ).

thf(sy_c_Time__Reasoning_OTBOUND_001tf__a,type,
    time_TBOUND_a: heap_Time_Heap_a > nat > $o ).

thf(sy_c_Time__Reasoning_Ofails_001t__Product____Type__Ounit,type,
    time_f8834461667527620124t_unit: heap_T5738788834812785303t_unit > heap_e7401611519738050253t_unit > $o ).

thf(sy_c_Time__Reasoning_Ofails_001tf__a,type,
    time_fails_a: heap_Time_Heap_a > heap_e7401611519738050253t_unit > $o ).

thf(sy_c_Time__Reasoning_Othe__heap_001t__Product____Type__Ounit,type,
    time_t3350536682685678164t_unit: heap_T5738788834812785303t_unit > heap_e7401611519738050253t_unit > heap_e7401611519738050253t_unit ).

thf(sy_c_Time__Reasoning_Othe__heap_001tf__a,type,
    time_the_heap_a: heap_Time_Heap_a > heap_e7401611519738050253t_unit > heap_e7401611519738050253t_unit ).

thf(sy_c_Time__Reasoning_Othe__res_001t__Product____Type__Ounit,type,
    time_t2745601220510131320t_unit: heap_T5738788834812785303t_unit > heap_e7401611519738050253t_unit > product_unit ).

thf(sy_c_Time__Reasoning_Othe__res_001tf__a,type,
    time_the_res_a: heap_Time_Heap_a > heap_e7401611519738050253t_unit > a ).

thf(sy_c_Time__Reasoning_Otime_001t__Heap__Oarray_I_Eo_J,type,
    time_time_array_o: heap_T5660665574680485309rray_o > heap_e7401611519738050253t_unit > nat ).

thf(sy_c_Time__Reasoning_Otime_001t__Heap__Oarray_It__Int__Oint_J,type,
    time_time_array_int: heap_T1346037964561226099ay_int > heap_e7401611519738050253t_unit > nat ).

thf(sy_c_Time__Reasoning_Otime_001t__Heap__Oarray_It__Nat__Onat_J,type,
    time_time_array_nat: heap_T3836121109492952855ay_nat > heap_e7401611519738050253t_unit > nat ).

thf(sy_c_Time__Reasoning_Otime_001t__Product____Type__Ounit,type,
    time_t4224138285095624986t_unit: heap_T5738788834812785303t_unit > heap_e7401611519738050253t_unit > nat ).

thf(sy_c_Time__Reasoning_Otime_001tf__a,type,
    time_time_a: heap_Time_Heap_a > heap_e7401611519738050253t_unit > nat ).

thf(sy_c_Transfer_Obi__total_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    bi_tot1331153423839324337nteger: ( int > code_integer > $o ) > $o ).

thf(sy_c_Transfer_Obi__total_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    bi_tot896582865486249351at_int: ( product_prod_nat_nat > int > $o ) > $o ).

thf(sy_c_Transfer_Obi__unique_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    bi_uni8663861020805155098nteger: ( int > code_integer > $o ) > $o ).

thf(sy_c_Transfer_Oleft__total_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    left_t3131394472396969446nt_int: ( product_prod_int_int > product_prod_int_int > $o ) > $o ).

thf(sy_c_Transfer_Oleft__unique_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    left_u6795595883297946906nteger: ( int > code_integer > $o ) > $o ).

thf(sy_c_Transfer_Oright__total_001t__Int__Oint_001t__Code____Numeral__Ointeger,type,
    right_7281159819619925802nteger: ( int > code_integer > $o ) > $o ).

thf(sy_c_Transfer_Oright__total_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_001t__Int__Oint,type,
    right_1157779049177982926at_int: ( product_prod_nat_nat > int > $o ) > $o ).

thf(sy_c_Transitive__Closure_Ortrancl_001t__Nat__Onat,type,
    transi2905341329935302413cl_nat: set_Pr1261947904930325089at_nat > set_Pr1261947904930325089at_nat ).

thf(sy_c_Typedef_Otype__definition_001t__Code____Numeral__Ointeger_001t__Int__Oint,type,
    type_d8366093980585677751er_int: ( code_integer > int ) > ( int > code_integer ) > set_int > $o ).

thf(sy_c_Typedef_Otype__definition_001t__Code____Numeral__Onatural_001t__Nat__Onat,type,
    type_d4410041424927559462al_nat: ( code_natural > nat ) > ( nat > code_natural ) > set_nat > $o ).

thf(sy_c_Typedef_Otype__definition_001t__Rat__Orat_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    type_d8554052265237484179nt_int: ( rat > set_Pr958786334691620121nt_int ) > ( set_Pr958786334691620121nt_int > rat ) > set_se6260736226359567993nt_int > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__List__Olist_It__Nat__Onat_J,type,
    accp_list_nat: ( list_nat > list_nat > $o ) > list_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Nat__Onat,type,
    accp_nat: ( nat > nat > $o ) > nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Code____Numeral__Onatural_Mt__Code____Numeral__Onatural_J,type,
    accp_P8126237942716283194atural: ( produc7822875418678951345atural > produc7822875418678951345atural > $o ) > produc7822875418678951345atural > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J,type,
    accp_P1096762738010456898nt_int: ( product_prod_int_int > product_prod_int_int > $o ) > product_prod_int_int > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    accp_P4275260045618599050at_nat: ( product_prod_nat_nat > product_prod_nat_nat > $o ) > product_prod_nat_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__Num__Onum_Mt__Num__Onum_J,type,
    accp_P3113834385874906142um_num: ( product_prod_num_num > product_prod_num_num > $o ) > product_prod_num_num > $o ).

thf(sy_c_Wellfounded_Opred__nat,type,
    pred_nat: set_Pr1261947904930325089at_nat ).

thf(sy_c_Wellfounded_Owf_001t__Int__Oint,type,
    wf_int: set_Pr958786334691620121nt_int > $o ).

thf(sy_c_Wellfounded_Owf_001t__Nat__Onat,type,
    wf_nat: set_Pr1261947904930325089at_nat > $o ).

thf(sy_c_fChoice_001t__Int__Oint,type,
    fChoice_int: ( int > $o ) > int ).

thf(sy_c_fChoice_001t__Nat__Onat,type,
    fChoice_nat: ( nat > $o ) > nat ).

thf(sy_c_fChoice_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    fChoic6978938873391328853at_nat: ( product_prod_nat_nat > $o ) > product_prod_nat_nat ).

thf(sy_c_fChoice_001t__Set__Oset_It__Nat__Onat_J,type,
    fChoice_set_nat: ( set_nat > $o ) > set_nat ).

thf(sy_c_fChoice_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    fChoic2749331249758569069nt_int: ( set_Pr958786334691620121nt_int > $o ) > set_Pr958786334691620121nt_int ).

thf(sy_c_member_001t__Code____Numeral__Ointeger,type,
    member_Code_integer: code_integer > set_Code_integer > $o ).

thf(sy_c_member_001t__Int__Oint,type,
    member_int: int > set_int > $o ).

thf(sy_c_member_001t__List__Olist_It__Nat__Onat_J,type,
    member_list_nat: list_nat > set_list_nat > $o ).

thf(sy_c_member_001t__Nat__Onat,type,
    member_nat: nat > set_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    member8440522571783428010at_nat: product_prod_nat_nat > set_Pr1261947904930325089at_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    member8206827879206165904at_nat: produc859450856879609959at_nat > set_Pr8693737435421807431at_nat > $o ).

thf(sy_c_member_001t__Rat__Orat,type,
    member_rat: rat > set_rat > $o ).

thf(sy_c_member_001t__Set__Oset_It__Nat__Onat_J,type,
    member_set_nat: set_nat > set_set_nat > $o ).

thf(sy_c_member_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J,type,
    member2340774599025711042nt_int: set_Pr958786334691620121nt_int > set_se6260736226359567993nt_int > $o ).

thf(sy_v_P,type,
    p: $o ).

thf(sy_v_h,type,
    h: heap_e7401611519738050253t_unit ).

thf(sy_v_m,type,
    m: heap_Time_Heap_a ).

thf(sy_v_t,type,
    t: nat ).

% Relevant facts (6071)
thf(fact_0__092_060open_062_092_060And_062h_O_AP_A_092_060Longrightarrow_062_Atime_Am_Ah_A_092_060le_062_At_092_060close_062,axiom,
    ! [H: heap_e7401611519738050253t_unit] :
      ( p
     => ( ord_less_eq_nat @ ( time_time_a @ m @ H ) @ t ) ) ).

% \<open>\<And>h. P \<Longrightarrow> time m h \<le> t\<close>
thf(fact_1_assms,axiom,
    ( p
   => ( time_TBOUND_a @ m @ t ) ) ).

% assms
thf(fact_2_Heap__Time__Monad_Obind__bind,axiom,
    ! [F: heap_T5738788834812785303t_unit,G: product_unit > heap_Time_Heap_a,K: a > heap_T5738788834812785303t_unit] :
      ( ( heap_T8685611227969916822t_unit @ ( heap_T757603679106148408unit_a @ F @ G ) @ K )
      = ( heap_T2633723481742716231t_unit @ F
        @ ^ [X: product_unit] : ( heap_T8685611227969916822t_unit @ ( G @ X ) @ K ) ) ) ).

% Heap_Time_Monad.bind_bind
thf(fact_3_Heap__Time__Monad_Obind__bind,axiom,
    ! [F: heap_Time_Heap_a,G: a > heap_T5738788834812785303t_unit,K: product_unit > heap_Time_Heap_a] :
      ( ( heap_T757603679106148408unit_a @ ( heap_T8685611227969916822t_unit @ F @ G ) @ K )
      = ( heap_Time_bind_a_a @ F
        @ ^ [X: a] : ( heap_T757603679106148408unit_a @ ( G @ X ) @ K ) ) ) ).

% Heap_Time_Monad.bind_bind
thf(fact_4_Heap__Time__Monad_Obind__bind,axiom,
    ! [F: heap_T5738788834812785303t_unit,G: product_unit > heap_T5738788834812785303t_unit,K: product_unit > heap_T5738788834812785303t_unit] :
      ( ( heap_T2633723481742716231t_unit @ ( heap_T2633723481742716231t_unit @ F @ G ) @ K )
      = ( heap_T2633723481742716231t_unit @ F
        @ ^ [X: product_unit] : ( heap_T2633723481742716231t_unit @ ( G @ X ) @ K ) ) ) ).

% Heap_Time_Monad.bind_bind
thf(fact_5_Heap__Time__Monad_Obind__bind,axiom,
    ! [F: heap_Time_Heap_a,G: a > heap_Time_Heap_a,K: a > heap_Time_Heap_a] :
      ( ( heap_Time_bind_a_a @ ( heap_Time_bind_a_a @ F @ G ) @ K )
      = ( heap_Time_bind_a_a @ F
        @ ^ [X: a] : ( heap_Time_bind_a_a @ ( G @ X ) @ K ) ) ) ).

% Heap_Time_Monad.bind_bind
thf(fact_6_Heap__Time__Monad_Obind__bind,axiom,
    ! [F: heap_T5738788834812785303t_unit,G: product_unit > heap_Time_Heap_a,K: a > heap_Time_Heap_a] :
      ( ( heap_Time_bind_a_a @ ( heap_T757603679106148408unit_a @ F @ G ) @ K )
      = ( heap_T757603679106148408unit_a @ F
        @ ^ [X: product_unit] : ( heap_Time_bind_a_a @ ( G @ X ) @ K ) ) ) ).

% Heap_Time_Monad.bind_bind
thf(fact_7_Heap__Time__Monad_Obind__bind,axiom,
    ! [F: heap_T5738788834812785303t_unit,G: product_unit > heap_T5738788834812785303t_unit,K: product_unit > heap_Time_Heap_a] :
      ( ( heap_T757603679106148408unit_a @ ( heap_T2633723481742716231t_unit @ F @ G ) @ K )
      = ( heap_T757603679106148408unit_a @ F
        @ ^ [X: product_unit] : ( heap_T757603679106148408unit_a @ ( G @ X ) @ K ) ) ) ).

% Heap_Time_Monad.bind_bind
thf(fact_8_order__refl,axiom,
    ! [X2: set_nat] : ( ord_less_eq_set_nat @ X2 @ X2 ) ).

% order_refl
thf(fact_9_order__refl,axiom,
    ! [X2: rat] : ( ord_less_eq_rat @ X2 @ X2 ) ).

% order_refl
thf(fact_10_order__refl,axiom,
    ! [X2: num] : ( ord_less_eq_num @ X2 @ X2 ) ).

% order_refl
thf(fact_11_order__refl,axiom,
    ! [X2: nat] : ( ord_less_eq_nat @ X2 @ X2 ) ).

% order_refl
thf(fact_12_order__refl,axiom,
    ! [X2: int] : ( ord_less_eq_int @ X2 @ X2 ) ).

% order_refl
thf(fact_13_dual__order_Orefl,axiom,
    ! [A: set_nat] : ( ord_less_eq_set_nat @ A @ A ) ).

% dual_order.refl
thf(fact_14_dual__order_Orefl,axiom,
    ! [A: rat] : ( ord_less_eq_rat @ A @ A ) ).

% dual_order.refl
thf(fact_15_dual__order_Orefl,axiom,
    ! [A: num] : ( ord_less_eq_num @ A @ A ) ).

% dual_order.refl
thf(fact_16_dual__order_Orefl,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ A @ A ) ).

% dual_order.refl
thf(fact_17_dual__order_Orefl,axiom,
    ! [A: int] : ( ord_less_eq_int @ A @ A ) ).

% dual_order.refl
thf(fact_18_distrib__if__bind,axiom,
    ! [B: $o,C: heap_T5738788834812785303t_unit,D: heap_T5738788834812785303t_unit,F: product_unit > heap_T5738788834812785303t_unit] :
      ( ( B
       => ( ( heap_T2633723481742716231t_unit @ ( if_Hea8138950348631371857t_unit @ B @ C @ D ) @ F )
          = ( heap_T2633723481742716231t_unit @ C @ F ) ) )
      & ( ~ B
       => ( ( heap_T2633723481742716231t_unit @ ( if_Hea8138950348631371857t_unit @ B @ C @ D ) @ F )
          = ( heap_T2633723481742716231t_unit @ D @ F ) ) ) ) ).

% distrib_if_bind
thf(fact_19_distrib__if__bind,axiom,
    ! [B: $o,C: heap_Time_Heap_a,D: heap_Time_Heap_a,F: a > heap_Time_Heap_a] :
      ( ( B
       => ( ( heap_Time_bind_a_a @ ( if_Heap_Time_Heap_a @ B @ C @ D ) @ F )
          = ( heap_Time_bind_a_a @ C @ F ) ) )
      & ( ~ B
       => ( ( heap_Time_bind_a_a @ ( if_Heap_Time_Heap_a @ B @ C @ D ) @ F )
          = ( heap_Time_bind_a_a @ D @ F ) ) ) ) ).

% distrib_if_bind
thf(fact_20_distrib__if__bind,axiom,
    ! [B: $o,C: heap_T5738788834812785303t_unit,D: heap_T5738788834812785303t_unit,F: product_unit > heap_Time_Heap_a] :
      ( ( B
       => ( ( heap_T757603679106148408unit_a @ ( if_Hea8138950348631371857t_unit @ B @ C @ D ) @ F )
          = ( heap_T757603679106148408unit_a @ C @ F ) ) )
      & ( ~ B
       => ( ( heap_T757603679106148408unit_a @ ( if_Hea8138950348631371857t_unit @ B @ C @ D ) @ F )
          = ( heap_T757603679106148408unit_a @ D @ F ) ) ) ) ).

% distrib_if_bind
thf(fact_21_TBOUNDD,axiom,
    ! [M: heap_T5738788834812785303t_unit,T: nat,H: heap_e7401611519738050253t_unit] :
      ( ( time_T7469515765551943773t_unit @ M @ T )
     => ( ord_less_eq_nat @ ( time_t4224138285095624986t_unit @ M @ H ) @ T ) ) ).

% TBOUNDD
thf(fact_22_TBOUNDD,axiom,
    ! [M: heap_Time_Heap_a,T: nat,H: heap_e7401611519738050253t_unit] :
      ( ( time_TBOUND_a @ M @ T )
     => ( ord_less_eq_nat @ ( time_time_a @ M @ H ) @ T ) ) ).

% TBOUNDD
thf(fact_23_TBOUNDI,axiom,
    ! [M: heap_T5738788834812785303t_unit,T: nat] :
      ( ! [H2: heap_e7401611519738050253t_unit] : ( ord_less_eq_nat @ ( time_t4224138285095624986t_unit @ M @ H2 ) @ T )
     => ( time_T7469515765551943773t_unit @ M @ T ) ) ).

% TBOUNDI
thf(fact_24_TBOUNDI,axiom,
    ! [M: heap_Time_Heap_a,T: nat] :
      ( ! [H2: heap_e7401611519738050253t_unit] : ( ord_less_eq_nat @ ( time_time_a @ M @ H2 ) @ T )
     => ( time_TBOUND_a @ M @ T ) ) ).

% TBOUNDI
thf(fact_25_TBOUND__def,axiom,
    ( time_T7469515765551943773t_unit
    = ( ^ [M2: heap_T5738788834812785303t_unit,T2: nat] :
        ! [H3: heap_e7401611519738050253t_unit] : ( ord_less_eq_nat @ ( time_t4224138285095624986t_unit @ M2 @ H3 ) @ T2 ) ) ) ).

% TBOUND_def
thf(fact_26_TBOUND__def,axiom,
    ( time_TBOUND_a
    = ( ^ [M2: heap_Time_Heap_a,T2: nat] :
        ! [H3: heap_e7401611519738050253t_unit] : ( ord_less_eq_nat @ ( time_time_a @ M2 @ H3 ) @ T2 ) ) ) ).

% TBOUND_def
thf(fact_27_le__refl,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ N ) ).

% le_refl
thf(fact_28_le__trans,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ J @ K )
       => ( ord_less_eq_nat @ I @ K ) ) ) ).

% le_trans
thf(fact_29_eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( M = N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% eq_imp_le
thf(fact_30_le__antisym,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( M = N ) ) ) ).

% le_antisym
thf(fact_31_nat__le__linear,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
      | ( ord_less_eq_nat @ N @ M ) ) ).

% nat_le_linear
thf(fact_32_TBOUND__mono,axiom,
    ! [C: heap_Time_Heap_a,T: nat,T3: nat] :
      ( ( time_TBOUND_a @ C @ T )
     => ( ( ord_less_eq_nat @ T @ T3 )
       => ( time_TBOUND_a @ C @ T3 ) ) ) ).

% TBOUND_mono
thf(fact_33_TBOUND__mono,axiom,
    ! [C: heap_T5738788834812785303t_unit,T: nat,T3: nat] :
      ( ( time_T7469515765551943773t_unit @ C @ T )
     => ( ( ord_less_eq_nat @ T @ T3 )
       => ( time_T7469515765551943773t_unit @ C @ T3 ) ) ) ).

% TBOUND_mono
thf(fact_34_TBOUND__eqI,axiom,
    ! [M: heap_Time_Heap_a,T: nat] :
      ( ! [H2: heap_e7401611519738050253t_unit] :
          ( ( time_time_a @ M @ H2 )
          = T )
     => ( time_TBOUND_a @ M @ T ) ) ).

% TBOUND_eqI
thf(fact_35_TBOUND__eqI,axiom,
    ! [M: heap_T5738788834812785303t_unit,T: nat] :
      ( ! [H2: heap_e7401611519738050253t_unit] :
          ( ( time_t4224138285095624986t_unit @ M @ H2 )
          = T )
     => ( time_T7469515765551943773t_unit @ M @ T ) ) ).

% TBOUND_eqI
thf(fact_36_order__antisym__conv,axiom,
    ! [Y: set_nat,X2: set_nat] :
      ( ( ord_less_eq_set_nat @ Y @ X2 )
     => ( ( ord_less_eq_set_nat @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

% order_antisym_conv
thf(fact_37_order__antisym__conv,axiom,
    ! [Y: rat,X2: rat] :
      ( ( ord_less_eq_rat @ Y @ X2 )
     => ( ( ord_less_eq_rat @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

% order_antisym_conv
thf(fact_38_order__antisym__conv,axiom,
    ! [Y: num,X2: num] :
      ( ( ord_less_eq_num @ Y @ X2 )
     => ( ( ord_less_eq_num @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

% order_antisym_conv
thf(fact_39_order__antisym__conv,axiom,
    ! [Y: nat,X2: nat] :
      ( ( ord_less_eq_nat @ Y @ X2 )
     => ( ( ord_less_eq_nat @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

% order_antisym_conv
thf(fact_40_order__antisym__conv,axiom,
    ! [Y: int,X2: int] :
      ( ( ord_less_eq_int @ Y @ X2 )
     => ( ( ord_less_eq_int @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

% order_antisym_conv
thf(fact_41_linorder__le__cases,axiom,
    ! [X2: rat,Y: rat] :
      ( ~ ( ord_less_eq_rat @ X2 @ Y )
     => ( ord_less_eq_rat @ Y @ X2 ) ) ).

% linorder_le_cases
thf(fact_42_linorder__le__cases,axiom,
    ! [X2: num,Y: num] :
      ( ~ ( ord_less_eq_num @ X2 @ Y )
     => ( ord_less_eq_num @ Y @ X2 ) ) ).

% linorder_le_cases
thf(fact_43_linorder__le__cases,axiom,
    ! [X2: nat,Y: nat] :
      ( ~ ( ord_less_eq_nat @ X2 @ Y )
     => ( ord_less_eq_nat @ Y @ X2 ) ) ).

% linorder_le_cases
thf(fact_44_linorder__le__cases,axiom,
    ! [X2: int,Y: int] :
      ( ~ ( ord_less_eq_int @ X2 @ Y )
     => ( ord_less_eq_int @ Y @ X2 ) ) ).

% linorder_le_cases
thf(fact_45_ord__le__eq__subst,axiom,
    ! [A: rat,B: rat,F: rat > rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_rat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_46_ord__le__eq__subst,axiom,
    ! [A: rat,B: rat,F: rat > num,C: num] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_num @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_47_ord__le__eq__subst,axiom,
    ! [A: rat,B: rat,F: rat > nat,C: nat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_48_ord__le__eq__subst,axiom,
    ! [A: rat,B: rat,F: rat > int,C: int] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_int @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_49_ord__le__eq__subst,axiom,
    ! [A: num,B: num,F: num > rat,C: rat] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_rat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_50_ord__le__eq__subst,axiom,
    ! [A: num,B: num,F: num > num,C: num] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_num @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_51_ord__le__eq__subst,axiom,
    ! [A: num,B: num,F: num > nat,C: nat] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_52_ord__le__eq__subst,axiom,
    ! [A: num,B: num,F: num > int,C: int] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_int @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_53_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > rat,C: rat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_rat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_54_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > num,C: num] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_num @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_55_ord__eq__le__subst,axiom,
    ! [A: rat,F: rat > rat,B: rat,C: rat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_rat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_56_ord__eq__le__subst,axiom,
    ! [A: num,F: rat > num,B: rat,C: rat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_num @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_57_ord__eq__le__subst,axiom,
    ! [A: nat,F: rat > nat,B: rat,C: rat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_58_ord__eq__le__subst,axiom,
    ! [A: int,F: rat > int,B: rat,C: rat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_int @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_59_ord__eq__le__subst,axiom,
    ! [A: rat,F: num > rat,B: num,C: num] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_rat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_60_ord__eq__le__subst,axiom,
    ! [A: num,F: num > num,B: num,C: num] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_num @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_61_ord__eq__le__subst,axiom,
    ! [A: nat,F: num > nat,B: num,C: num] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_62_ord__eq__le__subst,axiom,
    ! [A: int,F: num > int,B: num,C: num] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_int @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_63_ord__eq__le__subst,axiom,
    ! [A: rat,F: nat > rat,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_rat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_64_ord__eq__le__subst,axiom,
    ! [A: num,F: nat > num,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_num @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_65_linorder__linear,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ X2 @ Y )
      | ( ord_less_eq_rat @ Y @ X2 ) ) ).

% linorder_linear
thf(fact_66_linorder__linear,axiom,
    ! [X2: num,Y: num] :
      ( ( ord_less_eq_num @ X2 @ Y )
      | ( ord_less_eq_num @ Y @ X2 ) ) ).

% linorder_linear
thf(fact_67_linorder__linear,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X2 @ Y )
      | ( ord_less_eq_nat @ Y @ X2 ) ) ).

% linorder_linear
thf(fact_68_linorder__linear,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ X2 @ Y )
      | ( ord_less_eq_int @ Y @ X2 ) ) ).

% linorder_linear
thf(fact_69_order__eq__refl,axiom,
    ! [X2: set_nat,Y: set_nat] :
      ( ( X2 = Y )
     => ( ord_less_eq_set_nat @ X2 @ Y ) ) ).

% order_eq_refl
thf(fact_70_order__eq__refl,axiom,
    ! [X2: rat,Y: rat] :
      ( ( X2 = Y )
     => ( ord_less_eq_rat @ X2 @ Y ) ) ).

% order_eq_refl
thf(fact_71_order__eq__refl,axiom,
    ! [X2: num,Y: num] :
      ( ( X2 = Y )
     => ( ord_less_eq_num @ X2 @ Y ) ) ).

% order_eq_refl
thf(fact_72_order__eq__refl,axiom,
    ! [X2: nat,Y: nat] :
      ( ( X2 = Y )
     => ( ord_less_eq_nat @ X2 @ Y ) ) ).

% order_eq_refl
thf(fact_73_order__eq__refl,axiom,
    ! [X2: int,Y: int] :
      ( ( X2 = Y )
     => ( ord_less_eq_int @ X2 @ Y ) ) ).

% order_eq_refl
thf(fact_74_order__subst2,axiom,
    ! [A: rat,B: rat,F: rat > rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_rat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_75_order__subst2,axiom,
    ! [A: rat,B: rat,F: rat > num,C: num] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_num @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_num @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_76_order__subst2,axiom,
    ! [A: rat,B: rat,F: rat > nat,C: nat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_77_order__subst2,axiom,
    ! [A: rat,B: rat,F: rat > int,C: int] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_int @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_int @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_78_order__subst2,axiom,
    ! [A: num,B: num,F: num > rat,C: rat] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ord_less_eq_rat @ ( F @ B ) @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_rat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_79_order__subst2,axiom,
    ! [A: num,B: num,F: num > num,C: num] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ord_less_eq_num @ ( F @ B ) @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_num @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_80_order__subst2,axiom,
    ! [A: num,B: num,F: num > nat,C: nat] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_81_order__subst2,axiom,
    ! [A: num,B: num,F: num > int,C: int] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ord_less_eq_int @ ( F @ B ) @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_int @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_82_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > rat,C: rat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_rat @ ( F @ B ) @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_rat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_83_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > num,C: num] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_num @ ( F @ B ) @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_num @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_84_order__subst1,axiom,
    ! [A: rat,F: rat > rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_85_order__subst1,axiom,
    ! [A: rat,F: num > rat,B: num,C: num] :
      ( ( ord_less_eq_rat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_86_order__subst1,axiom,
    ! [A: rat,F: nat > rat,B: nat,C: nat] :
      ( ( ord_less_eq_rat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_87_order__subst1,axiom,
    ! [A: rat,F: int > rat,B: int,C: int] :
      ( ( ord_less_eq_rat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_int @ B @ C )
       => ( ! [X3: int,Y2: int] :
              ( ( ord_less_eq_int @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_88_order__subst1,axiom,
    ! [A: num,F: rat > num,B: rat,C: rat] :
      ( ( ord_less_eq_num @ A @ ( F @ B ) )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_num @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_89_order__subst1,axiom,
    ! [A: num,F: num > num,B: num,C: num] :
      ( ( ord_less_eq_num @ A @ ( F @ B ) )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_num @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_90_order__subst1,axiom,
    ! [A: num,F: nat > num,B: nat,C: nat] :
      ( ( ord_less_eq_num @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_num @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_91_order__subst1,axiom,
    ! [A: num,F: int > num,B: int,C: int] :
      ( ( ord_less_eq_num @ A @ ( F @ B ) )
     => ( ( ord_less_eq_int @ B @ C )
       => ( ! [X3: int,Y2: int] :
              ( ( ord_less_eq_int @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_num @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_92_order__subst1,axiom,
    ! [A: nat,F: rat > nat,B: rat,C: rat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_93_order__subst1,axiom,
    ! [A: nat,F: num > nat,B: num,C: num] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_94_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y3: set_nat,Z: set_nat] : Y3 = Z )
    = ( ^ [A2: set_nat,B2: set_nat] :
          ( ( ord_less_eq_set_nat @ A2 @ B2 )
          & ( ord_less_eq_set_nat @ B2 @ A2 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_95_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y3: rat,Z: rat] : Y3 = Z )
    = ( ^ [A2: rat,B2: rat] :
          ( ( ord_less_eq_rat @ A2 @ B2 )
          & ( ord_less_eq_rat @ B2 @ A2 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_96_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y3: num,Z: num] : Y3 = Z )
    = ( ^ [A2: num,B2: num] :
          ( ( ord_less_eq_num @ A2 @ B2 )
          & ( ord_less_eq_num @ B2 @ A2 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_97_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y3: nat,Z: nat] : Y3 = Z )
    = ( ^ [A2: nat,B2: nat] :
          ( ( ord_less_eq_nat @ A2 @ B2 )
          & ( ord_less_eq_nat @ B2 @ A2 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_98_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y3: int,Z: int] : Y3 = Z )
    = ( ^ [A2: int,B2: int] :
          ( ( ord_less_eq_int @ A2 @ B2 )
          & ( ord_less_eq_int @ B2 @ A2 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_99_antisym,axiom,
    ! [A: set_nat,B: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_100_antisym,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_101_antisym,axiom,
    ! [A: num,B: num] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ord_less_eq_num @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_102_antisym,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_103_antisym,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_104_dual__order_Otrans,axiom,
    ! [B: set_nat,A: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ B @ A )
     => ( ( ord_less_eq_set_nat @ C @ B )
       => ( ord_less_eq_set_nat @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_105_dual__order_Otrans,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_eq_rat @ B @ A )
     => ( ( ord_less_eq_rat @ C @ B )
       => ( ord_less_eq_rat @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_106_dual__order_Otrans,axiom,
    ! [B: num,A: num,C: num] :
      ( ( ord_less_eq_num @ B @ A )
     => ( ( ord_less_eq_num @ C @ B )
       => ( ord_less_eq_num @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_107_dual__order_Otrans,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( ord_less_eq_nat @ C @ B )
       => ( ord_less_eq_nat @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_108_dual__order_Otrans,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ( ord_less_eq_int @ C @ B )
       => ( ord_less_eq_int @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_109_dual__order_Oantisym,axiom,
    ! [B: set_nat,A: set_nat] :
      ( ( ord_less_eq_set_nat @ B @ A )
     => ( ( ord_less_eq_set_nat @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_110_dual__order_Oantisym,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_eq_rat @ B @ A )
     => ( ( ord_less_eq_rat @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_111_dual__order_Oantisym,axiom,
    ! [B: num,A: num] :
      ( ( ord_less_eq_num @ B @ A )
     => ( ( ord_less_eq_num @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_112_dual__order_Oantisym,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_113_dual__order_Oantisym,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ( ord_less_eq_int @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_114_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y3: set_nat,Z: set_nat] : Y3 = Z )
    = ( ^ [A2: set_nat,B2: set_nat] :
          ( ( ord_less_eq_set_nat @ B2 @ A2 )
          & ( ord_less_eq_set_nat @ A2 @ B2 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_115_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y3: rat,Z: rat] : Y3 = Z )
    = ( ^ [A2: rat,B2: rat] :
          ( ( ord_less_eq_rat @ B2 @ A2 )
          & ( ord_less_eq_rat @ A2 @ B2 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_116_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y3: num,Z: num] : Y3 = Z )
    = ( ^ [A2: num,B2: num] :
          ( ( ord_less_eq_num @ B2 @ A2 )
          & ( ord_less_eq_num @ A2 @ B2 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_117_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y3: nat,Z: nat] : Y3 = Z )
    = ( ^ [A2: nat,B2: nat] :
          ( ( ord_less_eq_nat @ B2 @ A2 )
          & ( ord_less_eq_nat @ A2 @ B2 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_118_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y3: int,Z: int] : Y3 = Z )
    = ( ^ [A2: int,B2: int] :
          ( ( ord_less_eq_int @ B2 @ A2 )
          & ( ord_less_eq_int @ A2 @ B2 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_119_linorder__wlog,axiom,
    ! [P: rat > rat > $o,A: rat,B: rat] :
      ( ! [A3: rat,B3: rat] :
          ( ( ord_less_eq_rat @ A3 @ B3 )
         => ( P @ A3 @ B3 ) )
     => ( ! [A3: rat,B3: rat] :
            ( ( P @ B3 @ A3 )
           => ( P @ A3 @ B3 ) )
       => ( P @ A @ B ) ) ) ).

% linorder_wlog
thf(fact_120_linorder__wlog,axiom,
    ! [P: num > num > $o,A: num,B: num] :
      ( ! [A3: num,B3: num] :
          ( ( ord_less_eq_num @ A3 @ B3 )
         => ( P @ A3 @ B3 ) )
     => ( ! [A3: num,B3: num] :
            ( ( P @ B3 @ A3 )
           => ( P @ A3 @ B3 ) )
       => ( P @ A @ B ) ) ) ).

% linorder_wlog
thf(fact_121_linorder__wlog,axiom,
    ! [P: nat > nat > $o,A: nat,B: nat] :
      ( ! [A3: nat,B3: nat] :
          ( ( ord_less_eq_nat @ A3 @ B3 )
         => ( P @ A3 @ B3 ) )
     => ( ! [A3: nat,B3: nat] :
            ( ( P @ B3 @ A3 )
           => ( P @ A3 @ B3 ) )
       => ( P @ A @ B ) ) ) ).

% linorder_wlog
thf(fact_122_linorder__wlog,axiom,
    ! [P: int > int > $o,A: int,B: int] :
      ( ! [A3: int,B3: int] :
          ( ( ord_less_eq_int @ A3 @ B3 )
         => ( P @ A3 @ B3 ) )
     => ( ! [A3: int,B3: int] :
            ( ( P @ B3 @ A3 )
           => ( P @ A3 @ B3 ) )
       => ( P @ A @ B ) ) ) ).

% linorder_wlog
thf(fact_123_order__trans,axiom,
    ! [X2: set_nat,Y: set_nat,Z2: set_nat] :
      ( ( ord_less_eq_set_nat @ X2 @ Y )
     => ( ( ord_less_eq_set_nat @ Y @ Z2 )
       => ( ord_less_eq_set_nat @ X2 @ Z2 ) ) ) ).

% order_trans
thf(fact_124_order__trans,axiom,
    ! [X2: rat,Y: rat,Z2: rat] :
      ( ( ord_less_eq_rat @ X2 @ Y )
     => ( ( ord_less_eq_rat @ Y @ Z2 )
       => ( ord_less_eq_rat @ X2 @ Z2 ) ) ) ).

% order_trans
thf(fact_125_order__trans,axiom,
    ! [X2: num,Y: num,Z2: num] :
      ( ( ord_less_eq_num @ X2 @ Y )
     => ( ( ord_less_eq_num @ Y @ Z2 )
       => ( ord_less_eq_num @ X2 @ Z2 ) ) ) ).

% order_trans
thf(fact_126_order__trans,axiom,
    ! [X2: nat,Y: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ X2 @ Y )
     => ( ( ord_less_eq_nat @ Y @ Z2 )
       => ( ord_less_eq_nat @ X2 @ Z2 ) ) ) ).

% order_trans
thf(fact_127_order__trans,axiom,
    ! [X2: int,Y: int,Z2: int] :
      ( ( ord_less_eq_int @ X2 @ Y )
     => ( ( ord_less_eq_int @ Y @ Z2 )
       => ( ord_less_eq_int @ X2 @ Z2 ) ) ) ).

% order_trans
thf(fact_128_order_Otrans,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ord_less_eq_set_nat @ A @ C ) ) ) ).

% order.trans
thf(fact_129_order_Otrans,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ord_less_eq_rat @ A @ C ) ) ) ).

% order.trans
thf(fact_130_order_Otrans,axiom,
    ! [A: num,B: num,C: num] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ord_less_eq_num @ A @ C ) ) ) ).

% order.trans
thf(fact_131_order_Otrans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_eq_nat @ A @ C ) ) ) ).

% order.trans
thf(fact_132_order_Otrans,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ B @ C )
       => ( ord_less_eq_int @ A @ C ) ) ) ).

% order.trans
thf(fact_133_order__antisym,axiom,
    ! [X2: set_nat,Y: set_nat] :
      ( ( ord_less_eq_set_nat @ X2 @ Y )
     => ( ( ord_less_eq_set_nat @ Y @ X2 )
       => ( X2 = Y ) ) ) ).

% order_antisym
thf(fact_134_order__antisym,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ X2 @ Y )
     => ( ( ord_less_eq_rat @ Y @ X2 )
       => ( X2 = Y ) ) ) ).

% order_antisym
thf(fact_135_order__antisym,axiom,
    ! [X2: num,Y: num] :
      ( ( ord_less_eq_num @ X2 @ Y )
     => ( ( ord_less_eq_num @ Y @ X2 )
       => ( X2 = Y ) ) ) ).

% order_antisym
thf(fact_136_order__antisym,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X2 @ Y )
     => ( ( ord_less_eq_nat @ Y @ X2 )
       => ( X2 = Y ) ) ) ).

% order_antisym
thf(fact_137_order__antisym,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ X2 @ Y )
     => ( ( ord_less_eq_int @ Y @ X2 )
       => ( X2 = Y ) ) ) ).

% order_antisym
thf(fact_138_ord__le__eq__trans,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_set_nat @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_139_ord__le__eq__trans,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_rat @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_140_ord__le__eq__trans,axiom,
    ! [A: num,B: num,C: num] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_num @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_141_ord__le__eq__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_nat @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_142_ord__le__eq__trans,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_int @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_143_ord__eq__le__trans,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat] :
      ( ( A = B )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ord_less_eq_set_nat @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_144_ord__eq__le__trans,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( A = B )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ord_less_eq_rat @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_145_ord__eq__le__trans,axiom,
    ! [A: num,B: num,C: num] :
      ( ( A = B )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ord_less_eq_num @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_146_ord__eq__le__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( A = B )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_eq_nat @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_147_ord__eq__le__trans,axiom,
    ! [A: int,B: int,C: int] :
      ( ( A = B )
     => ( ( ord_less_eq_int @ B @ C )
       => ( ord_less_eq_int @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_148_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y3: set_nat,Z: set_nat] : Y3 = Z )
    = ( ^ [X: set_nat,Y4: set_nat] :
          ( ( ord_less_eq_set_nat @ X @ Y4 )
          & ( ord_less_eq_set_nat @ Y4 @ X ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_149_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y3: rat,Z: rat] : Y3 = Z )
    = ( ^ [X: rat,Y4: rat] :
          ( ( ord_less_eq_rat @ X @ Y4 )
          & ( ord_less_eq_rat @ Y4 @ X ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_150_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y3: num,Z: num] : Y3 = Z )
    = ( ^ [X: num,Y4: num] :
          ( ( ord_less_eq_num @ X @ Y4 )
          & ( ord_less_eq_num @ Y4 @ X ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_151_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y3: nat,Z: nat] : Y3 = Z )
    = ( ^ [X: nat,Y4: nat] :
          ( ( ord_less_eq_nat @ X @ Y4 )
          & ( ord_less_eq_nat @ Y4 @ X ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_152_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y3: int,Z: int] : Y3 = Z )
    = ( ^ [X: int,Y4: int] :
          ( ( ord_less_eq_int @ X @ Y4 )
          & ( ord_less_eq_int @ Y4 @ X ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_153_le__cases3,axiom,
    ! [X2: rat,Y: rat,Z2: rat] :
      ( ( ( ord_less_eq_rat @ X2 @ Y )
       => ~ ( ord_less_eq_rat @ Y @ Z2 ) )
     => ( ( ( ord_less_eq_rat @ Y @ X2 )
         => ~ ( ord_less_eq_rat @ X2 @ Z2 ) )
       => ( ( ( ord_less_eq_rat @ X2 @ Z2 )
           => ~ ( ord_less_eq_rat @ Z2 @ Y ) )
         => ( ( ( ord_less_eq_rat @ Z2 @ Y )
             => ~ ( ord_less_eq_rat @ Y @ X2 ) )
           => ( ( ( ord_less_eq_rat @ Y @ Z2 )
               => ~ ( ord_less_eq_rat @ Z2 @ X2 ) )
             => ~ ( ( ord_less_eq_rat @ Z2 @ X2 )
                 => ~ ( ord_less_eq_rat @ X2 @ Y ) ) ) ) ) ) ) ).

% le_cases3
thf(fact_154_le__cases3,axiom,
    ! [X2: num,Y: num,Z2: num] :
      ( ( ( ord_less_eq_num @ X2 @ Y )
       => ~ ( ord_less_eq_num @ Y @ Z2 ) )
     => ( ( ( ord_less_eq_num @ Y @ X2 )
         => ~ ( ord_less_eq_num @ X2 @ Z2 ) )
       => ( ( ( ord_less_eq_num @ X2 @ Z2 )
           => ~ ( ord_less_eq_num @ Z2 @ Y ) )
         => ( ( ( ord_less_eq_num @ Z2 @ Y )
             => ~ ( ord_less_eq_num @ Y @ X2 ) )
           => ( ( ( ord_less_eq_num @ Y @ Z2 )
               => ~ ( ord_less_eq_num @ Z2 @ X2 ) )
             => ~ ( ( ord_less_eq_num @ Z2 @ X2 )
                 => ~ ( ord_less_eq_num @ X2 @ Y ) ) ) ) ) ) ) ).

% le_cases3
thf(fact_155_le__cases3,axiom,
    ! [X2: nat,Y: nat,Z2: nat] :
      ( ( ( ord_less_eq_nat @ X2 @ Y )
       => ~ ( ord_less_eq_nat @ Y @ Z2 ) )
     => ( ( ( ord_less_eq_nat @ Y @ X2 )
         => ~ ( ord_less_eq_nat @ X2 @ Z2 ) )
       => ( ( ( ord_less_eq_nat @ X2 @ Z2 )
           => ~ ( ord_less_eq_nat @ Z2 @ Y ) )
         => ( ( ( ord_less_eq_nat @ Z2 @ Y )
             => ~ ( ord_less_eq_nat @ Y @ X2 ) )
           => ( ( ( ord_less_eq_nat @ Y @ Z2 )
               => ~ ( ord_less_eq_nat @ Z2 @ X2 ) )
             => ~ ( ( ord_less_eq_nat @ Z2 @ X2 )
                 => ~ ( ord_less_eq_nat @ X2 @ Y ) ) ) ) ) ) ) ).

% le_cases3
thf(fact_156_le__cases3,axiom,
    ! [X2: int,Y: int,Z2: int] :
      ( ( ( ord_less_eq_int @ X2 @ Y )
       => ~ ( ord_less_eq_int @ Y @ Z2 ) )
     => ( ( ( ord_less_eq_int @ Y @ X2 )
         => ~ ( ord_less_eq_int @ X2 @ Z2 ) )
       => ( ( ( ord_less_eq_int @ X2 @ Z2 )
           => ~ ( ord_less_eq_int @ Z2 @ Y ) )
         => ( ( ( ord_less_eq_int @ Z2 @ Y )
             => ~ ( ord_less_eq_int @ Y @ X2 ) )
           => ( ( ( ord_less_eq_int @ Y @ Z2 )
               => ~ ( ord_less_eq_int @ Z2 @ X2 ) )
             => ~ ( ( ord_less_eq_int @ Z2 @ X2 )
                 => ~ ( ord_less_eq_int @ X2 @ Y ) ) ) ) ) ) ) ).

% le_cases3
thf(fact_157_nle__le,axiom,
    ! [A: rat,B: rat] :
      ( ( ~ ( ord_less_eq_rat @ A @ B ) )
      = ( ( ord_less_eq_rat @ B @ A )
        & ( B != A ) ) ) ).

% nle_le
thf(fact_158_nle__le,axiom,
    ! [A: num,B: num] :
      ( ( ~ ( ord_less_eq_num @ A @ B ) )
      = ( ( ord_less_eq_num @ B @ A )
        & ( B != A ) ) ) ).

% nle_le
thf(fact_159_nle__le,axiom,
    ! [A: nat,B: nat] :
      ( ( ~ ( ord_less_eq_nat @ A @ B ) )
      = ( ( ord_less_eq_nat @ B @ A )
        & ( B != A ) ) ) ).

% nle_le
thf(fact_160_nle__le,axiom,
    ! [A: int,B: int] :
      ( ( ~ ( ord_less_eq_int @ A @ B ) )
      = ( ( ord_less_eq_int @ B @ A )
        & ( B != A ) ) ) ).

% nle_le
thf(fact_161_Nat_Oex__has__greatest__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y2: nat] :
            ( ( P @ Y2 )
           => ( ord_less_eq_nat @ Y2 @ B ) )
       => ? [X3: nat] :
            ( ( P @ X3 )
            & ! [Y5: nat] :
                ( ( P @ Y5 )
               => ( ord_less_eq_nat @ Y5 @ X3 ) ) ) ) ) ).

% Nat.ex_has_greatest_nat
thf(fact_162_raise__bind,axiom,
    ! [E: list_char,F: a > heap_Time_Heap_a] :
      ( ( heap_Time_bind_a_a @ ( heap_Time_raise_a @ E ) @ F )
      = ( heap_Time_raise_a @ E ) ) ).

% raise_bind
thf(fact_163_raise__bind,axiom,
    ! [E: list_char,F: product_unit > heap_Time_Heap_a] :
      ( ( heap_T757603679106148408unit_a @ ( heap_T2927564422264180874t_unit @ E ) @ F )
      = ( heap_Time_raise_a @ E ) ) ).

% raise_bind
thf(fact_164_raise__bind,axiom,
    ! [E: list_char,F: product_unit > heap_T5738788834812785303t_unit] :
      ( ( heap_T2633723481742716231t_unit @ ( heap_T2927564422264180874t_unit @ E ) @ F )
      = ( heap_T2927564422264180874t_unit @ E ) ) ).

% raise_bind
thf(fact_165_Greatest__equality,axiom,
    ! [P: set_nat > $o,X2: set_nat] :
      ( ( P @ X2 )
     => ( ! [Y2: set_nat] :
            ( ( P @ Y2 )
           => ( ord_less_eq_set_nat @ Y2 @ X2 ) )
       => ( ( order_5724808138429204845et_nat @ P )
          = X2 ) ) ) ).

% Greatest_equality
thf(fact_166_Greatest__equality,axiom,
    ! [P: rat > $o,X2: rat] :
      ( ( P @ X2 )
     => ( ! [Y2: rat] :
            ( ( P @ Y2 )
           => ( ord_less_eq_rat @ Y2 @ X2 ) )
       => ( ( order_Greatest_rat @ P )
          = X2 ) ) ) ).

% Greatest_equality
thf(fact_167_Greatest__equality,axiom,
    ! [P: num > $o,X2: num] :
      ( ( P @ X2 )
     => ( ! [Y2: num] :
            ( ( P @ Y2 )
           => ( ord_less_eq_num @ Y2 @ X2 ) )
       => ( ( order_Greatest_num @ P )
          = X2 ) ) ) ).

% Greatest_equality
thf(fact_168_Greatest__equality,axiom,
    ! [P: int > $o,X2: int] :
      ( ( P @ X2 )
     => ( ! [Y2: int] :
            ( ( P @ Y2 )
           => ( ord_less_eq_int @ Y2 @ X2 ) )
       => ( ( order_Greatest_int @ P )
          = X2 ) ) ) ).

% Greatest_equality
thf(fact_169_Greatest__equality,axiom,
    ! [P: nat > $o,X2: nat] :
      ( ( P @ X2 )
     => ( ! [Y2: nat] :
            ( ( P @ Y2 )
           => ( ord_less_eq_nat @ Y2 @ X2 ) )
       => ( ( order_Greatest_nat @ P )
          = X2 ) ) ) ).

% Greatest_equality
thf(fact_170_mem__Collect__eq,axiom,
    ! [A: product_prod_nat_nat,P: product_prod_nat_nat > $o] :
      ( ( member8440522571783428010at_nat @ A @ ( collec3392354462482085612at_nat @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_171_mem__Collect__eq,axiom,
    ! [A: list_nat,P: list_nat > $o] :
      ( ( member_list_nat @ A @ ( collect_list_nat @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_172_mem__Collect__eq,axiom,
    ! [A: set_Pr958786334691620121nt_int,P: set_Pr958786334691620121nt_int > $o] :
      ( ( member2340774599025711042nt_int @ A @ ( collec5210948495886036740nt_int @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_173_mem__Collect__eq,axiom,
    ! [A: set_nat,P: set_nat > $o] :
      ( ( member_set_nat @ A @ ( collect_set_nat @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_174_mem__Collect__eq,axiom,
    ! [A: nat,P: nat > $o] :
      ( ( member_nat @ A @ ( collect_nat @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_175_mem__Collect__eq,axiom,
    ! [A: int,P: int > $o] :
      ( ( member_int @ A @ ( collect_int @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_176_Collect__mem__eq,axiom,
    ! [A4: set_Pr1261947904930325089at_nat] :
      ( ( collec3392354462482085612at_nat
        @ ^ [X: product_prod_nat_nat] : ( member8440522571783428010at_nat @ X @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_177_Collect__mem__eq,axiom,
    ! [A4: set_list_nat] :
      ( ( collect_list_nat
        @ ^ [X: list_nat] : ( member_list_nat @ X @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_178_Collect__mem__eq,axiom,
    ! [A4: set_se6260736226359567993nt_int] :
      ( ( collec5210948495886036740nt_int
        @ ^ [X: set_Pr958786334691620121nt_int] : ( member2340774599025711042nt_int @ X @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_179_Collect__mem__eq,axiom,
    ! [A4: set_set_nat] :
      ( ( collect_set_nat
        @ ^ [X: set_nat] : ( member_set_nat @ X @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_180_Collect__mem__eq,axiom,
    ! [A4: set_nat] :
      ( ( collect_nat
        @ ^ [X: nat] : ( member_nat @ X @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_181_Collect__mem__eq,axiom,
    ! [A4: set_int] :
      ( ( collect_int
        @ ^ [X: int] : ( member_int @ X @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_182_Collect__cong,axiom,
    ! [P: list_nat > $o,Q: list_nat > $o] :
      ( ! [X3: list_nat] :
          ( ( P @ X3 )
          = ( Q @ X3 ) )
     => ( ( collect_list_nat @ P )
        = ( collect_list_nat @ Q ) ) ) ).

% Collect_cong
thf(fact_183_Collect__cong,axiom,
    ! [P: set_Pr958786334691620121nt_int > $o,Q: set_Pr958786334691620121nt_int > $o] :
      ( ! [X3: set_Pr958786334691620121nt_int] :
          ( ( P @ X3 )
          = ( Q @ X3 ) )
     => ( ( collec5210948495886036740nt_int @ P )
        = ( collec5210948495886036740nt_int @ Q ) ) ) ).

% Collect_cong
thf(fact_184_Collect__cong,axiom,
    ! [P: set_nat > $o,Q: set_nat > $o] :
      ( ! [X3: set_nat] :
          ( ( P @ X3 )
          = ( Q @ X3 ) )
     => ( ( collect_set_nat @ P )
        = ( collect_set_nat @ Q ) ) ) ).

% Collect_cong
thf(fact_185_Collect__cong,axiom,
    ! [P: nat > $o,Q: nat > $o] :
      ( ! [X3: nat] :
          ( ( P @ X3 )
          = ( Q @ X3 ) )
     => ( ( collect_nat @ P )
        = ( collect_nat @ Q ) ) ) ).

% Collect_cong
thf(fact_186_Collect__cong,axiom,
    ! [P: int > $o,Q: int > $o] :
      ( ! [X3: int] :
          ( ( P @ X3 )
          = ( Q @ X3 ) )
     => ( ( collect_int @ P )
        = ( collect_int @ Q ) ) ) ).

% Collect_cong
thf(fact_187_GreatestI2__order,axiom,
    ! [P: set_nat > $o,X2: set_nat,Q: set_nat > $o] :
      ( ( P @ X2 )
     => ( ! [Y2: set_nat] :
            ( ( P @ Y2 )
           => ( ord_less_eq_set_nat @ Y2 @ X2 ) )
       => ( ! [X3: set_nat] :
              ( ( P @ X3 )
             => ( ! [Y5: set_nat] :
                    ( ( P @ Y5 )
                   => ( ord_less_eq_set_nat @ Y5 @ X3 ) )
               => ( Q @ X3 ) ) )
         => ( Q @ ( order_5724808138429204845et_nat @ P ) ) ) ) ) ).

% GreatestI2_order
thf(fact_188_GreatestI2__order,axiom,
    ! [P: rat > $o,X2: rat,Q: rat > $o] :
      ( ( P @ X2 )
     => ( ! [Y2: rat] :
            ( ( P @ Y2 )
           => ( ord_less_eq_rat @ Y2 @ X2 ) )
       => ( ! [X3: rat] :
              ( ( P @ X3 )
             => ( ! [Y5: rat] :
                    ( ( P @ Y5 )
                   => ( ord_less_eq_rat @ Y5 @ X3 ) )
               => ( Q @ X3 ) ) )
         => ( Q @ ( order_Greatest_rat @ P ) ) ) ) ) ).

% GreatestI2_order
thf(fact_189_GreatestI2__order,axiom,
    ! [P: num > $o,X2: num,Q: num > $o] :
      ( ( P @ X2 )
     => ( ! [Y2: num] :
            ( ( P @ Y2 )
           => ( ord_less_eq_num @ Y2 @ X2 ) )
       => ( ! [X3: num] :
              ( ( P @ X3 )
             => ( ! [Y5: num] :
                    ( ( P @ Y5 )
                   => ( ord_less_eq_num @ Y5 @ X3 ) )
               => ( Q @ X3 ) ) )
         => ( Q @ ( order_Greatest_num @ P ) ) ) ) ) ).

% GreatestI2_order
thf(fact_190_GreatestI2__order,axiom,
    ! [P: int > $o,X2: int,Q: int > $o] :
      ( ( P @ X2 )
     => ( ! [Y2: int] :
            ( ( P @ Y2 )
           => ( ord_less_eq_int @ Y2 @ X2 ) )
       => ( ! [X3: int] :
              ( ( P @ X3 )
             => ( ! [Y5: int] :
                    ( ( P @ Y5 )
                   => ( ord_less_eq_int @ Y5 @ X3 ) )
               => ( Q @ X3 ) ) )
         => ( Q @ ( order_Greatest_int @ P ) ) ) ) ) ).

% GreatestI2_order
thf(fact_191_GreatestI2__order,axiom,
    ! [P: nat > $o,X2: nat,Q: nat > $o] :
      ( ( P @ X2 )
     => ( ! [Y2: nat] :
            ( ( P @ Y2 )
           => ( ord_less_eq_nat @ Y2 @ X2 ) )
       => ( ! [X3: nat] :
              ( ( P @ X3 )
             => ( ! [Y5: nat] :
                    ( ( P @ Y5 )
                   => ( ord_less_eq_nat @ Y5 @ X3 ) )
               => ( Q @ X3 ) ) )
         => ( Q @ ( order_Greatest_nat @ P ) ) ) ) ) ).

% GreatestI2_order
thf(fact_192_TBOUND__assert_H__bind,axiom,
    ! [P: $o,P2: $o,M: heap_Time_Heap_a,T: nat] :
      ( ( time_EQ_o @ P @ P2 )
     => ( ( P
         => ( time_TBOUND_a @ M @ T ) )
       => ( time_TBOUND_a
          @ ( heap_T757603679106148408unit_a @ ( refine_Imp_assert @ P )
            @ ^ [Uu: product_unit] : M )
          @ ( if_nat @ P2 @ T @ zero_zero_nat ) ) ) ) ).

% TBOUND_assert'_bind
thf(fact_193_TBOUND__assert_H__bind,axiom,
    ! [P: $o,P2: $o,M: heap_T5738788834812785303t_unit,T: nat] :
      ( ( time_EQ_o @ P @ P2 )
     => ( ( P
         => ( time_T7469515765551943773t_unit @ M @ T ) )
       => ( time_T7469515765551943773t_unit
          @ ( heap_T2633723481742716231t_unit @ ( refine_Imp_assert @ P )
            @ ^ [Uu: product_unit] : M )
          @ ( if_nat @ P2 @ T @ zero_zero_nat ) ) ) ) ).

% TBOUND_assert'_bind
thf(fact_194_bounded__Max__nat,axiom,
    ! [P: nat > $o,X2: nat,M3: nat] :
      ( ( P @ X2 )
     => ( ! [X3: nat] :
            ( ( P @ X3 )
           => ( ord_less_eq_nat @ X3 @ M3 ) )
       => ~ ! [M4: nat] :
              ( ( P @ M4 )
             => ~ ! [X4: nat] :
                    ( ( P @ X4 )
                   => ( ord_less_eq_nat @ X4 @ M4 ) ) ) ) ) ).

% bounded_Max_nat
thf(fact_195_le__rel__bool__arg__iff,axiom,
    ( ord_le7022414076629706543et_nat
    = ( ^ [X5: $o > set_nat,Y6: $o > set_nat] :
          ( ( ord_less_eq_set_nat @ ( X5 @ $false ) @ ( Y6 @ $false ) )
          & ( ord_less_eq_set_nat @ ( X5 @ $true ) @ ( Y6 @ $true ) ) ) ) ) ).

% le_rel_bool_arg_iff
thf(fact_196_le__rel__bool__arg__iff,axiom,
    ( ord_less_eq_o_rat
    = ( ^ [X5: $o > rat,Y6: $o > rat] :
          ( ( ord_less_eq_rat @ ( X5 @ $false ) @ ( Y6 @ $false ) )
          & ( ord_less_eq_rat @ ( X5 @ $true ) @ ( Y6 @ $true ) ) ) ) ) ).

% le_rel_bool_arg_iff
thf(fact_197_le__rel__bool__arg__iff,axiom,
    ( ord_less_eq_o_num
    = ( ^ [X5: $o > num,Y6: $o > num] :
          ( ( ord_less_eq_num @ ( X5 @ $false ) @ ( Y6 @ $false ) )
          & ( ord_less_eq_num @ ( X5 @ $true ) @ ( Y6 @ $true ) ) ) ) ) ).

% le_rel_bool_arg_iff
thf(fact_198_le__rel__bool__arg__iff,axiom,
    ( ord_less_eq_o_nat
    = ( ^ [X5: $o > nat,Y6: $o > nat] :
          ( ( ord_less_eq_nat @ ( X5 @ $false ) @ ( Y6 @ $false ) )
          & ( ord_less_eq_nat @ ( X5 @ $true ) @ ( Y6 @ $true ) ) ) ) ) ).

% le_rel_bool_arg_iff
thf(fact_199_le__rel__bool__arg__iff,axiom,
    ( ord_less_eq_o_int
    = ( ^ [X5: $o > int,Y6: $o > int] :
          ( ( ord_less_eq_int @ ( X5 @ $false ) @ ( Y6 @ $false ) )
          & ( ord_less_eq_int @ ( X5 @ $true ) @ ( Y6 @ $true ) ) ) ) ) ).

% le_rel_bool_arg_iff
thf(fact_200_verit__la__disequality,axiom,
    ! [A: rat,B: rat] :
      ( ( A = B )
      | ~ ( ord_less_eq_rat @ A @ B )
      | ~ ( ord_less_eq_rat @ B @ A ) ) ).

% verit_la_disequality
thf(fact_201_verit__la__disequality,axiom,
    ! [A: num,B: num] :
      ( ( A = B )
      | ~ ( ord_less_eq_num @ A @ B )
      | ~ ( ord_less_eq_num @ B @ A ) ) ).

% verit_la_disequality
thf(fact_202_verit__la__disequality,axiom,
    ! [A: nat,B: nat] :
      ( ( A = B )
      | ~ ( ord_less_eq_nat @ A @ B )
      | ~ ( ord_less_eq_nat @ B @ A ) ) ).

% verit_la_disequality
thf(fact_203_verit__la__disequality,axiom,
    ! [A: int,B: int] :
      ( ( A = B )
      | ~ ( ord_less_eq_int @ A @ B )
      | ~ ( ord_less_eq_int @ B @ A ) ) ).

% verit_la_disequality
thf(fact_204_ord__eq__le__eq__trans,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat,D: set_nat] :
      ( ( A = B )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ( C = D )
         => ( ord_less_eq_set_nat @ A @ D ) ) ) ) ).

% ord_eq_le_eq_trans
thf(fact_205_ord__eq__le__eq__trans,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( A = B )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ( C = D )
         => ( ord_less_eq_rat @ A @ D ) ) ) ) ).

% ord_eq_le_eq_trans
thf(fact_206_ord__eq__le__eq__trans,axiom,
    ! [A: num,B: num,C: num,D: num] :
      ( ( A = B )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ( C = D )
         => ( ord_less_eq_num @ A @ D ) ) ) ) ).

% ord_eq_le_eq_trans
thf(fact_207_ord__eq__le__eq__trans,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( A = B )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ( C = D )
         => ( ord_less_eq_nat @ A @ D ) ) ) ) ).

% ord_eq_le_eq_trans
thf(fact_208_ord__eq__le__eq__trans,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( A = B )
     => ( ( ord_less_eq_int @ B @ C )
       => ( ( C = D )
         => ( ord_less_eq_int @ A @ D ) ) ) ) ).

% ord_eq_le_eq_trans
thf(fact_209_verit__comp__simplify1_I2_J,axiom,
    ! [A: set_nat] : ( ord_less_eq_set_nat @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_210_verit__comp__simplify1_I2_J,axiom,
    ! [A: rat] : ( ord_less_eq_rat @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_211_verit__comp__simplify1_I2_J,axiom,
    ! [A: num] : ( ord_less_eq_num @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_212_verit__comp__simplify1_I2_J,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_213_verit__comp__simplify1_I2_J,axiom,
    ! [A: int] : ( ord_less_eq_int @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_214_refines__assert_H__bind,axiom,
    ! [P3: heap_Time_Heap_a,Q2: heap_Time_Heap_a,Phi: $o] :
      ( ( refine_Imp_refines_a @ P3 @ Q2 )
     => ( refine_Imp_refines_a @ P3
        @ ( heap_T757603679106148408unit_a @ ( refine_Imp_assert @ Phi )
          @ ^ [Uu: product_unit] : Q2 ) ) ) ).

% refines_assert'_bind
thf(fact_215_refines__assert_H__bind,axiom,
    ! [P3: heap_T5738788834812785303t_unit,Q2: heap_T5738788834812785303t_unit,Phi: $o] :
      ( ( refine451278484176762712t_unit @ P3 @ Q2 )
     => ( refine451278484176762712t_unit @ P3
        @ ( heap_T2633723481742716231t_unit @ ( refine_Imp_assert @ Phi )
          @ ^ [Uu: product_unit] : Q2 ) ) ) ).

% refines_assert'_bind
thf(fact_216_ureturn__bind,axiom,
    ! [X2: a,F: a > heap_Time_Heap_a] :
      ( ( heap_Time_bind_a_a @ ( heap_Time_ureturn_a @ X2 ) @ F )
      = ( F @ X2 ) ) ).

% ureturn_bind
thf(fact_217_ureturn__bind,axiom,
    ! [X2: product_unit,F: product_unit > heap_Time_Heap_a] :
      ( ( heap_T757603679106148408unit_a @ ( heap_T4284346855313245393t_unit @ X2 ) @ F )
      = ( F @ X2 ) ) ).

% ureturn_bind
thf(fact_218_ureturn__bind,axiom,
    ! [X2: product_unit,F: product_unit > heap_T5738788834812785303t_unit] :
      ( ( heap_T2633723481742716231t_unit @ ( heap_T4284346855313245393t_unit @ X2 ) @ F )
      = ( F @ X2 ) ) ).

% ureturn_bind
thf(fact_219_bot__nat__0_Oextremum,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ zero_zero_nat @ A ) ).

% bot_nat_0.extremum
thf(fact_220_le0,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% le0
thf(fact_221_refines__refl,axiom,
    ! [P3: heap_T5738788834812785303t_unit] : ( refine451278484176762712t_unit @ P3 @ P3 ) ).

% refines_refl
thf(fact_222_refines__If,axiom,
    ! [B: $o,T: heap_T5738788834812785303t_unit,T3: heap_T5738788834812785303t_unit,E: heap_T5738788834812785303t_unit,E2: heap_T5738788834812785303t_unit] :
      ( ( B
       => ( refine451278484176762712t_unit @ T @ T3 ) )
     => ( ( ~ B
         => ( refine451278484176762712t_unit @ E @ E2 ) )
       => ( refine451278484176762712t_unit @ ( if_Hea8138950348631371857t_unit @ B @ T @ E ) @ ( if_Hea8138950348631371857t_unit @ B @ T3 @ E2 ) ) ) ) ).

% refines_If
thf(fact_223_time__raise,axiom,
    ! [Msg: list_char,H: heap_e7401611519738050253t_unit] :
      ( ( time_time_a @ ( heap_Time_raise_a @ Msg ) @ H )
      = zero_zero_nat ) ).

% time_raise
thf(fact_224_time__raise,axiom,
    ! [Msg: list_char,H: heap_e7401611519738050253t_unit] :
      ( ( time_t4224138285095624986t_unit @ ( heap_T2927564422264180874t_unit @ Msg ) @ H )
      = zero_zero_nat ) ).

% time_raise
thf(fact_225_refines__bind,axiom,
    ! [M: heap_Time_Heap_a,M5: heap_Time_Heap_a,F: a > heap_Time_Heap_a,F2: a > heap_Time_Heap_a] :
      ( ( refine_Imp_refines_a @ M @ M5 )
     => ( ! [X3: a] : ( refine_Imp_refines_a @ ( F @ X3 ) @ ( F2 @ X3 ) )
       => ( refine_Imp_refines_a @ ( heap_Time_bind_a_a @ M @ F ) @ ( heap_Time_bind_a_a @ M5 @ F2 ) ) ) ) ).

% refines_bind
thf(fact_226_refines__bind,axiom,
    ! [M: heap_T5738788834812785303t_unit,M5: heap_T5738788834812785303t_unit,F: product_unit > heap_Time_Heap_a,F2: product_unit > heap_Time_Heap_a] :
      ( ( refine451278484176762712t_unit @ M @ M5 )
     => ( ! [X3: product_unit] : ( refine_Imp_refines_a @ ( F @ X3 ) @ ( F2 @ X3 ) )
       => ( refine_Imp_refines_a @ ( heap_T757603679106148408unit_a @ M @ F ) @ ( heap_T757603679106148408unit_a @ M5 @ F2 ) ) ) ) ).

% refines_bind
thf(fact_227_refines__bind,axiom,
    ! [M: heap_T5738788834812785303t_unit,M5: heap_T5738788834812785303t_unit,F: product_unit > heap_T5738788834812785303t_unit,F2: product_unit > heap_T5738788834812785303t_unit] :
      ( ( refine451278484176762712t_unit @ M @ M5 )
     => ( ! [X3: product_unit] : ( refine451278484176762712t_unit @ ( F @ X3 ) @ ( F2 @ X3 ) )
       => ( refine451278484176762712t_unit @ ( heap_T2633723481742716231t_unit @ M @ F ) @ ( heap_T2633723481742716231t_unit @ M5 @ F2 ) ) ) ) ).

% refines_bind
thf(fact_228_less__eq__nat_Osimps_I1_J,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% less_eq_nat.simps(1)
thf(fact_229_bot__nat__0_Oextremum__unique,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
      = ( A = zero_zero_nat ) ) ).

% bot_nat_0.extremum_unique
thf(fact_230_bot__nat__0_Oextremum__uniqueI,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( A = zero_zero_nat ) ) ).

% bot_nat_0.extremum_uniqueI
thf(fact_231_le__0__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% le_0_eq
thf(fact_232_time__assert_H,axiom,
    ! [P: $o,H: heap_e7401611519738050253t_unit] :
      ( ( time_t4224138285095624986t_unit @ ( refine_Imp_assert @ P ) @ H )
      = zero_zero_nat ) ).

% time_assert'
thf(fact_233_TBOUND__refines,axiom,
    ! [C: heap_Time_Heap_a,T: nat,D: heap_Time_Heap_a] :
      ( ( time_TBOUND_a @ C @ T )
     => ( ( refine_Imp_refines_a @ C @ D )
       => ( time_TBOUND_a @ D @ T ) ) ) ).

% TBOUND_refines
thf(fact_234_TBOUND__refines,axiom,
    ! [C: heap_T5738788834812785303t_unit,T: nat,D: heap_T5738788834812785303t_unit] :
      ( ( time_T7469515765551943773t_unit @ C @ T )
     => ( ( refine451278484176762712t_unit @ C @ D )
       => ( time_T7469515765551943773t_unit @ D @ T ) ) ) ).

% TBOUND_refines
thf(fact_235_GreatestI__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y2: nat] :
            ( ( P @ Y2 )
           => ( ord_less_eq_nat @ Y2 @ B ) )
       => ( P @ ( order_Greatest_nat @ P ) ) ) ) ).

% GreatestI_nat
thf(fact_236_Greatest__le__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y2: nat] :
            ( ( P @ Y2 )
           => ( ord_less_eq_nat @ Y2 @ B ) )
       => ( ord_less_eq_nat @ K @ ( order_Greatest_nat @ P ) ) ) ) ).

% Greatest_le_nat
thf(fact_237_GreatestI__ex__nat,axiom,
    ! [P: nat > $o,B: nat] :
      ( ? [X_1: nat] : ( P @ X_1 )
     => ( ! [Y2: nat] :
            ( ( P @ Y2 )
           => ( ord_less_eq_nat @ Y2 @ B ) )
       => ( P @ ( order_Greatest_nat @ P ) ) ) ) ).

% GreatestI_ex_nat
thf(fact_238_bind__ureturn,axiom,
    ! [F: heap_Time_Heap_a] :
      ( ( heap_Time_bind_a_a @ F @ heap_Time_ureturn_a )
      = F ) ).

% bind_ureturn
thf(fact_239_bind__ureturn,axiom,
    ! [F: heap_T5738788834812785303t_unit] :
      ( ( heap_T2633723481742716231t_unit @ F @ heap_T4284346855313245393t_unit )
      = F ) ).

% bind_ureturn
thf(fact_240_le__zero__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% le_zero_eq
thf(fact_241_le__numeral__extra_I3_J,axiom,
    ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger ).

% le_numeral_extra(3)
thf(fact_242_le__numeral__extra_I3_J,axiom,
    ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ zero_z2226904508553997617atural ).

% le_numeral_extra(3)
thf(fact_243_le__numeral__extra_I3_J,axiom,
    ord_less_eq_rat @ zero_zero_rat @ zero_zero_rat ).

% le_numeral_extra(3)
thf(fact_244_le__numeral__extra_I3_J,axiom,
    ord_less_eq_nat @ zero_zero_nat @ zero_zero_nat ).

% le_numeral_extra(3)
thf(fact_245_le__numeral__extra_I3_J,axiom,
    ord_less_eq_int @ zero_zero_int @ zero_zero_int ).

% le_numeral_extra(3)
thf(fact_246_zero__le,axiom,
    ! [X2: nat] : ( ord_less_eq_nat @ zero_zero_nat @ X2 ) ).

% zero_le
thf(fact_247_time__refines,axiom,
    ! [C: heap_Time_Heap_a,C2: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit] :
      ( ( refine_Imp_refines_a @ C @ C2 )
     => ( ~ ( time_fails_a @ C2 @ H )
       => ( ord_less_eq_nat @ ( time_time_a @ C @ H ) @ ( time_time_a @ C2 @ H ) ) ) ) ).

% time_refines
thf(fact_248_time__refines,axiom,
    ! [C: heap_T5738788834812785303t_unit,C2: heap_T5738788834812785303t_unit,H: heap_e7401611519738050253t_unit] :
      ( ( refine451278484176762712t_unit @ C @ C2 )
     => ( ~ ( time_f8834461667527620124t_unit @ C2 @ H )
       => ( ord_less_eq_nat @ ( time_t4224138285095624986t_unit @ C @ H ) @ ( time_t4224138285095624986t_unit @ C2 @ H ) ) ) ) ).

% time_refines
thf(fact_249_of__nat__le__0__iff,axiom,
    ! [M: nat] :
      ( ( ord_le3102999989581377725nteger @ ( semiri4939895301339042750nteger @ M ) @ zero_z3403309356797280102nteger )
      = ( M = zero_zero_nat ) ) ).

% of_nat_le_0_iff
thf(fact_250_of__nat__le__0__iff,axiom,
    ! [M: nat] :
      ( ( ord_le1926595141338095240atural @ ( semiri3763490453095760265atural @ M ) @ zero_z2226904508553997617atural )
      = ( M = zero_zero_nat ) ) ).

% of_nat_le_0_iff
thf(fact_251_of__nat__le__0__iff,axiom,
    ! [M: nat] :
      ( ( ord_less_eq_rat @ ( semiri681578069525770553at_rat @ M ) @ zero_zero_rat )
      = ( M = zero_zero_nat ) ) ).

% of_nat_le_0_iff
thf(fact_252_of__nat__le__0__iff,axiom,
    ! [M: nat] :
      ( ( ord_less_eq_nat @ ( semiri1316708129612266289at_nat @ M ) @ zero_zero_nat )
      = ( M = zero_zero_nat ) ) ).

% of_nat_le_0_iff
thf(fact_253_of__nat__le__0__iff,axiom,
    ! [M: nat] :
      ( ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ M ) @ zero_zero_int )
      = ( M = zero_zero_nat ) ) ).

% of_nat_le_0_iff
thf(fact_254_zero__natural_Orsp,axiom,
    zero_zero_nat = zero_zero_nat ).

% zero_natural.rsp
thf(fact_255_zero__reorient,axiom,
    ! [X2: nat] :
      ( ( zero_zero_nat = X2 )
      = ( X2 = zero_zero_nat ) ) ).

% zero_reorient
thf(fact_256_zero__reorient,axiom,
    ! [X2: int] :
      ( ( zero_zero_int = X2 )
      = ( X2 = zero_zero_int ) ) ).

% zero_reorient
thf(fact_257_zero__reorient,axiom,
    ! [X2: code_integer] :
      ( ( zero_z3403309356797280102nteger = X2 )
      = ( X2 = zero_z3403309356797280102nteger ) ) ).

% zero_reorient
thf(fact_258_zero__reorient,axiom,
    ! [X2: rat] :
      ( ( zero_zero_rat = X2 )
      = ( X2 = zero_zero_rat ) ) ).

% zero_reorient
thf(fact_259_zero__reorient,axiom,
    ! [X2: code_natural] :
      ( ( zero_z2226904508553997617atural = X2 )
      = ( X2 = zero_z2226904508553997617atural ) ) ).

% zero_reorient
thf(fact_260_of__nat__eq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( semiri1314217659103216013at_int @ M )
        = ( semiri1314217659103216013at_int @ N ) )
      = ( M = N ) ) ).

% of_nat_eq_iff
thf(fact_261_of__nat__eq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( semiri1316708129612266289at_nat @ M )
        = ( semiri1316708129612266289at_nat @ N ) )
      = ( M = N ) ) ).

% of_nat_eq_iff
thf(fact_262_of__nat__eq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( semiri4939895301339042750nteger @ M )
        = ( semiri4939895301339042750nteger @ N ) )
      = ( M = N ) ) ).

% of_nat_eq_iff
thf(fact_263_of__nat__eq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( semiri681578069525770553at_rat @ M )
        = ( semiri681578069525770553at_rat @ N ) )
      = ( M = N ) ) ).

% of_nat_eq_iff
thf(fact_264_of__nat__eq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( semiri3763490453095760265atural @ M )
        = ( semiri3763490453095760265atural @ N ) )
      = ( M = N ) ) ).

% of_nat_eq_iff
thf(fact_265_of__nat__eq__0__iff,axiom,
    ! [M: nat] :
      ( ( ( semiri1314217659103216013at_int @ M )
        = zero_zero_int )
      = ( M = zero_zero_nat ) ) ).

% of_nat_eq_0_iff
thf(fact_266_of__nat__eq__0__iff,axiom,
    ! [M: nat] :
      ( ( ( semiri1316708129612266289at_nat @ M )
        = zero_zero_nat )
      = ( M = zero_zero_nat ) ) ).

% of_nat_eq_0_iff
thf(fact_267_of__nat__eq__0__iff,axiom,
    ! [M: nat] :
      ( ( ( semiri4939895301339042750nteger @ M )
        = zero_z3403309356797280102nteger )
      = ( M = zero_zero_nat ) ) ).

% of_nat_eq_0_iff
thf(fact_268_of__nat__eq__0__iff,axiom,
    ! [M: nat] :
      ( ( ( semiri681578069525770553at_rat @ M )
        = zero_zero_rat )
      = ( M = zero_zero_nat ) ) ).

% of_nat_eq_0_iff
thf(fact_269_of__nat__eq__0__iff,axiom,
    ! [M: nat] :
      ( ( ( semiri3763490453095760265atural @ M )
        = zero_z2226904508553997617atural )
      = ( M = zero_zero_nat ) ) ).

% of_nat_eq_0_iff
thf(fact_270_of__nat__0__eq__iff,axiom,
    ! [N: nat] :
      ( ( zero_zero_int
        = ( semiri1314217659103216013at_int @ N ) )
      = ( zero_zero_nat = N ) ) ).

% of_nat_0_eq_iff
thf(fact_271_of__nat__0__eq__iff,axiom,
    ! [N: nat] :
      ( ( zero_zero_nat
        = ( semiri1316708129612266289at_nat @ N ) )
      = ( zero_zero_nat = N ) ) ).

% of_nat_0_eq_iff
thf(fact_272_of__nat__0__eq__iff,axiom,
    ! [N: nat] :
      ( ( zero_z3403309356797280102nteger
        = ( semiri4939895301339042750nteger @ N ) )
      = ( zero_zero_nat = N ) ) ).

% of_nat_0_eq_iff
thf(fact_273_of__nat__0__eq__iff,axiom,
    ! [N: nat] :
      ( ( zero_zero_rat
        = ( semiri681578069525770553at_rat @ N ) )
      = ( zero_zero_nat = N ) ) ).

% of_nat_0_eq_iff
thf(fact_274_of__nat__0__eq__iff,axiom,
    ! [N: nat] :
      ( ( zero_z2226904508553997617atural
        = ( semiri3763490453095760265atural @ N ) )
      = ( zero_zero_nat = N ) ) ).

% of_nat_0_eq_iff
thf(fact_275_of__nat__0,axiom,
    ( ( semiri1314217659103216013at_int @ zero_zero_nat )
    = zero_zero_int ) ).

% of_nat_0
thf(fact_276_of__nat__0,axiom,
    ( ( semiri1316708129612266289at_nat @ zero_zero_nat )
    = zero_zero_nat ) ).

% of_nat_0
thf(fact_277_of__nat__0,axiom,
    ( ( semiri4939895301339042750nteger @ zero_zero_nat )
    = zero_z3403309356797280102nteger ) ).

% of_nat_0
thf(fact_278_of__nat__0,axiom,
    ( ( semiri681578069525770553at_rat @ zero_zero_nat )
    = zero_zero_rat ) ).

% of_nat_0
thf(fact_279_of__nat__0,axiom,
    ( ( semiri3763490453095760265atural @ zero_zero_nat )
    = zero_z2226904508553997617atural ) ).

% of_nat_0
thf(fact_280_of__nat__le__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_le3102999989581377725nteger @ ( semiri4939895301339042750nteger @ M ) @ ( semiri4939895301339042750nteger @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% of_nat_le_iff
thf(fact_281_of__nat__le__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_le1926595141338095240atural @ ( semiri3763490453095760265atural @ M ) @ ( semiri3763490453095760265atural @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% of_nat_le_iff
thf(fact_282_of__nat__le__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% of_nat_le_iff
thf(fact_283_of__nat__le__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% of_nat_le_iff
thf(fact_284_of__nat__le__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% of_nat_le_iff
thf(fact_285_int__ops_I1_J,axiom,
    ( ( semiri1314217659103216013at_int @ zero_zero_nat )
    = zero_zero_int ) ).

% int_ops(1)
thf(fact_286_nat__int__comparison_I3_J,axiom,
    ( ord_less_eq_nat
    = ( ^ [A2: nat,B2: nat] : ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ A2 ) @ ( semiri1314217659103216013at_int @ B2 ) ) ) ) ).

% nat_int_comparison(3)
thf(fact_287_nat__leq__as__int,axiom,
    ( ord_less_eq_nat
    = ( ^ [A2: nat,B2: nat] : ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ A2 ) @ ( semiri1314217659103216013at_int @ B2 ) ) ) ) ).

% nat_leq_as_int
thf(fact_288_of__nat__0__le__iff,axiom,
    ! [N: nat] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( semiri4939895301339042750nteger @ N ) ) ).

% of_nat_0_le_iff
thf(fact_289_of__nat__0__le__iff,axiom,
    ! [N: nat] : ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( semiri3763490453095760265atural @ N ) ) ).

% of_nat_0_le_iff
thf(fact_290_of__nat__0__le__iff,axiom,
    ! [N: nat] : ( ord_less_eq_rat @ zero_zero_rat @ ( semiri681578069525770553at_rat @ N ) ) ).

% of_nat_0_le_iff
thf(fact_291_of__nat__0__le__iff,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ ( semiri1316708129612266289at_nat @ N ) ) ).

% of_nat_0_le_iff
thf(fact_292_of__nat__0__le__iff,axiom,
    ! [N: nat] : ( ord_less_eq_int @ zero_zero_int @ ( semiri1314217659103216013at_int @ N ) ) ).

% of_nat_0_le_iff
thf(fact_293_of__nat__mono,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_le3102999989581377725nteger @ ( semiri4939895301339042750nteger @ I ) @ ( semiri4939895301339042750nteger @ J ) ) ) ).

% of_nat_mono
thf(fact_294_of__nat__mono,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_le1926595141338095240atural @ ( semiri3763490453095760265atural @ I ) @ ( semiri3763490453095760265atural @ J ) ) ) ).

% of_nat_mono
thf(fact_295_of__nat__mono,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_rat @ ( semiri681578069525770553at_rat @ I ) @ ( semiri681578069525770553at_rat @ J ) ) ) ).

% of_nat_mono
thf(fact_296_of__nat__mono,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ ( semiri1316708129612266289at_nat @ I ) @ ( semiri1316708129612266289at_nat @ J ) ) ) ).

% of_nat_mono
thf(fact_297_of__nat__mono,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ I ) @ ( semiri1314217659103216013at_int @ J ) ) ) ).

% of_nat_mono
thf(fact_298_fails__refines,axiom,
    ! [C: heap_T5738788834812785303t_unit,C2: heap_T5738788834812785303t_unit,H: heap_e7401611519738050253t_unit] :
      ( ( refine451278484176762712t_unit @ C @ C2 )
     => ( ( time_f8834461667527620124t_unit @ C @ H )
       => ( time_f8834461667527620124t_unit @ C2 @ H ) ) ) ).

% fails_refines
thf(fact_299_fails__assert_H,axiom,
    ! [P: $o,H: heap_e7401611519738050253t_unit] :
      ( ( time_f8834461667527620124t_unit @ ( refine_Imp_assert @ P ) @ H )
      = ~ P ) ).

% fails_assert'
thf(fact_300_real__arch__simple,axiom,
    ! [X2: rat] :
    ? [N2: nat] : ( ord_less_eq_rat @ X2 @ ( semiri681578069525770553at_rat @ N2 ) ) ).

% real_arch_simple
thf(fact_301_time__wait,axiom,
    ! [N: nat,H: heap_e7401611519738050253t_unit] :
      ( ( time_t4224138285095624986t_unit @ ( heap_Time_wait @ N ) @ H )
      = N ) ).

% time_wait
thf(fact_302_zle__int,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% zle_int
thf(fact_303_dbl__simps_I2_J,axiom,
    ( ( neg_numeral_dbl_int @ zero_zero_int )
    = zero_zero_int ) ).

% dbl_simps(2)
thf(fact_304_dbl__simps_I2_J,axiom,
    ( ( neg_nu8804712462038260780nteger @ zero_z3403309356797280102nteger )
    = zero_z3403309356797280102nteger ) ).

% dbl_simps(2)
thf(fact_305_dbl__simps_I2_J,axiom,
    ( ( neg_numeral_dbl_rat @ zero_zero_rat )
    = zero_zero_rat ) ).

% dbl_simps(2)
thf(fact_306_fails__bind,axiom,
    ! [M: heap_Time_Heap_a,F: a > heap_Time_Heap_a,H: heap_e7401611519738050253t_unit] :
      ( ( time_fails_a @ ( heap_Time_bind_a_a @ M @ F ) @ H )
      = ( ~ ( time_fails_a @ M @ H )
       => ( time_fails_a @ ( F @ ( time_the_res_a @ M @ H ) ) @ ( time_the_heap_a @ M @ H ) ) ) ) ).

% fails_bind
thf(fact_307_fails__bind,axiom,
    ! [M: heap_T5738788834812785303t_unit,F: product_unit > heap_Time_Heap_a,H: heap_e7401611519738050253t_unit] :
      ( ( time_fails_a @ ( heap_T757603679106148408unit_a @ M @ F ) @ H )
      = ( ~ ( time_f8834461667527620124t_unit @ M @ H )
       => ( time_fails_a @ ( F @ ( time_t2745601220510131320t_unit @ M @ H ) ) @ ( time_t3350536682685678164t_unit @ M @ H ) ) ) ) ).

% fails_bind
thf(fact_308_fails__bind,axiom,
    ! [M: heap_T5738788834812785303t_unit,F: product_unit > heap_T5738788834812785303t_unit,H: heap_e7401611519738050253t_unit] :
      ( ( time_f8834461667527620124t_unit @ ( heap_T2633723481742716231t_unit @ M @ F ) @ H )
      = ( ~ ( time_f8834461667527620124t_unit @ M @ H )
       => ( time_f8834461667527620124t_unit @ ( F @ ( time_t2745601220510131320t_unit @ M @ H ) ) @ ( time_t3350536682685678164t_unit @ M @ H ) ) ) ) ).

% fails_bind
thf(fact_309_TBOUND__bind,axiom,
    ! [M: heap_Time_Heap_a,T_1: nat,F: a > heap_Time_Heap_a,T_2: nat] :
      ( ( time_TBOUND_a @ M @ T_1 )
     => ( ! [X3: a,H2: heap_e7401611519738050253t_unit] :
            ( ( X3
              = ( time_the_res_a @ M @ H2 ) )
           => ( ~ ( time_fails_a @ M @ H2 )
             => ( time_TBOUND_a @ ( F @ X3 ) @ T_2 ) ) )
       => ( time_TBOUND_a @ ( heap_Time_bind_a_a @ M @ F ) @ ( plus_plus_nat @ T_1 @ T_2 ) ) ) ) ).

% TBOUND_bind
thf(fact_310_TBOUND__bind,axiom,
    ! [M: heap_Time_Heap_a,T_1: nat,F: a > heap_T5738788834812785303t_unit,T_2: nat] :
      ( ( time_TBOUND_a @ M @ T_1 )
     => ( ! [X3: a,H2: heap_e7401611519738050253t_unit] :
            ( ( X3
              = ( time_the_res_a @ M @ H2 ) )
           => ( ~ ( time_fails_a @ M @ H2 )
             => ( time_T7469515765551943773t_unit @ ( F @ X3 ) @ T_2 ) ) )
       => ( time_T7469515765551943773t_unit @ ( heap_T8685611227969916822t_unit @ M @ F ) @ ( plus_plus_nat @ T_1 @ T_2 ) ) ) ) ).

% TBOUND_bind
thf(fact_311_TBOUND__bind,axiom,
    ! [M: heap_T5738788834812785303t_unit,T_1: nat,F: product_unit > heap_Time_Heap_a,T_2: nat] :
      ( ( time_T7469515765551943773t_unit @ M @ T_1 )
     => ( ! [X3: product_unit,H2: heap_e7401611519738050253t_unit] :
            ( ( X3
              = ( time_t2745601220510131320t_unit @ M @ H2 ) )
           => ( ~ ( time_f8834461667527620124t_unit @ M @ H2 )
             => ( time_TBOUND_a @ ( F @ X3 ) @ T_2 ) ) )
       => ( time_TBOUND_a @ ( heap_T757603679106148408unit_a @ M @ F ) @ ( plus_plus_nat @ T_1 @ T_2 ) ) ) ) ).

% TBOUND_bind
thf(fact_312_TBOUND__bind,axiom,
    ! [M: heap_T5738788834812785303t_unit,T_1: nat,F: product_unit > heap_T5738788834812785303t_unit,T_2: nat] :
      ( ( time_T7469515765551943773t_unit @ M @ T_1 )
     => ( ! [X3: product_unit,H2: heap_e7401611519738050253t_unit] :
            ( ( X3
              = ( time_t2745601220510131320t_unit @ M @ H2 ) )
           => ( ~ ( time_f8834461667527620124t_unit @ M @ H2 )
             => ( time_T7469515765551943773t_unit @ ( F @ X3 ) @ T_2 ) ) )
       => ( time_T7469515765551943773t_unit @ ( heap_T2633723481742716231t_unit @ M @ F ) @ ( plus_plus_nat @ T_1 @ T_2 ) ) ) ) ).

% TBOUND_bind
thf(fact_313_add__left__cancel,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ A @ B )
        = ( plus_p5714425477246183910nteger @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_314_add__left__cancel,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ( plus_plus_rat @ A @ B )
        = ( plus_plus_rat @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_315_add__left__cancel,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = ( plus_plus_nat @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_316_add__left__cancel,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( plus_plus_int @ A @ B )
        = ( plus_plus_int @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_317_add__right__cancel,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ B @ A )
        = ( plus_p5714425477246183910nteger @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_318_add__right__cancel,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ( plus_plus_rat @ B @ A )
        = ( plus_plus_rat @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_319_add__right__cancel,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = ( plus_plus_nat @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_320_add__right__cancel,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ( plus_plus_int @ B @ A )
        = ( plus_plus_int @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_321_add__le__cancel__left,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ C @ A ) @ ( plus_p5714425477246183910nteger @ C @ B ) )
      = ( ord_le3102999989581377725nteger @ A @ B ) ) ).

% add_le_cancel_left
thf(fact_322_add__le__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ C @ A ) @ ( plus_plus_rat @ C @ B ) )
      = ( ord_less_eq_rat @ A @ B ) ) ).

% add_le_cancel_left
thf(fact_323_add__le__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_cancel_left
thf(fact_324_add__le__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
      = ( ord_less_eq_int @ A @ B ) ) ).

% add_le_cancel_left
thf(fact_325_add__le__cancel__right,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ ( plus_p5714425477246183910nteger @ B @ C ) )
      = ( ord_le3102999989581377725nteger @ A @ B ) ) ).

% add_le_cancel_right
thf(fact_326_add__le__cancel__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ C ) )
      = ( ord_less_eq_rat @ A @ B ) ) ).

% add_le_cancel_right
thf(fact_327_add__le__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_cancel_right
thf(fact_328_add__le__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
      = ( ord_less_eq_int @ A @ B ) ) ).

% add_le_cancel_right
thf(fact_329_double__eq__0__iff,axiom,
    ! [A: int] :
      ( ( ( plus_plus_int @ A @ A )
        = zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% double_eq_0_iff
thf(fact_330_double__eq__0__iff,axiom,
    ! [A: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ A @ A )
        = zero_z3403309356797280102nteger )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% double_eq_0_iff
thf(fact_331_double__eq__0__iff,axiom,
    ! [A: rat] :
      ( ( ( plus_plus_rat @ A @ A )
        = zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% double_eq_0_iff
thf(fact_332_add__0,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A )
      = A ) ).

% add_0
thf(fact_333_add__0,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ zero_zero_int @ A )
      = A ) ).

% add_0
thf(fact_334_add__0,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ zero_z3403309356797280102nteger @ A )
      = A ) ).

% add_0
thf(fact_335_add__0,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ zero_zero_rat @ A )
      = A ) ).

% add_0
thf(fact_336_add__0,axiom,
    ! [A: code_natural] :
      ( ( plus_p4538020629002901425atural @ zero_z2226904508553997617atural @ A )
      = A ) ).

% add_0
thf(fact_337_zero__eq__add__iff__both__eq__0,axiom,
    ! [X2: nat,Y: nat] :
      ( ( zero_zero_nat
        = ( plus_plus_nat @ X2 @ Y ) )
      = ( ( X2 = zero_zero_nat )
        & ( Y = zero_zero_nat ) ) ) ).

% zero_eq_add_iff_both_eq_0
thf(fact_338_add__eq__0__iff__both__eq__0,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ( plus_plus_nat @ X2 @ Y )
        = zero_zero_nat )
      = ( ( X2 = zero_zero_nat )
        & ( Y = zero_zero_nat ) ) ) ).

% add_eq_0_iff_both_eq_0
thf(fact_339_add__cancel__right__right,axiom,
    ! [A: nat,B: nat] :
      ( ( A
        = ( plus_plus_nat @ A @ B ) )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_right_right
thf(fact_340_add__cancel__right__right,axiom,
    ! [A: int,B: int] :
      ( ( A
        = ( plus_plus_int @ A @ B ) )
      = ( B = zero_zero_int ) ) ).

% add_cancel_right_right
thf(fact_341_add__cancel__right__right,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A
        = ( plus_p5714425477246183910nteger @ A @ B ) )
      = ( B = zero_z3403309356797280102nteger ) ) ).

% add_cancel_right_right
thf(fact_342_add__cancel__right__right,axiom,
    ! [A: rat,B: rat] :
      ( ( A
        = ( plus_plus_rat @ A @ B ) )
      = ( B = zero_zero_rat ) ) ).

% add_cancel_right_right
thf(fact_343_add__cancel__right__right,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( A
        = ( plus_p4538020629002901425atural @ A @ B ) )
      = ( B = zero_z2226904508553997617atural ) ) ).

% add_cancel_right_right
thf(fact_344_add__cancel__right__left,axiom,
    ! [A: nat,B: nat] :
      ( ( A
        = ( plus_plus_nat @ B @ A ) )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_right_left
thf(fact_345_add__cancel__right__left,axiom,
    ! [A: int,B: int] :
      ( ( A
        = ( plus_plus_int @ B @ A ) )
      = ( B = zero_zero_int ) ) ).

% add_cancel_right_left
thf(fact_346_add__cancel__right__left,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A
        = ( plus_p5714425477246183910nteger @ B @ A ) )
      = ( B = zero_z3403309356797280102nteger ) ) ).

% add_cancel_right_left
thf(fact_347_add__cancel__right__left,axiom,
    ! [A: rat,B: rat] :
      ( ( A
        = ( plus_plus_rat @ B @ A ) )
      = ( B = zero_zero_rat ) ) ).

% add_cancel_right_left
thf(fact_348_add__cancel__right__left,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( A
        = ( plus_p4538020629002901425atural @ B @ A ) )
      = ( B = zero_z2226904508553997617atural ) ) ).

% add_cancel_right_left
thf(fact_349_add__cancel__left__right,axiom,
    ! [A: nat,B: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = A )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_left_right
thf(fact_350_add__cancel__left__right,axiom,
    ! [A: int,B: int] :
      ( ( ( plus_plus_int @ A @ B )
        = A )
      = ( B = zero_zero_int ) ) ).

% add_cancel_left_right
thf(fact_351_add__cancel__left__right,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ A @ B )
        = A )
      = ( B = zero_z3403309356797280102nteger ) ) ).

% add_cancel_left_right
thf(fact_352_add__cancel__left__right,axiom,
    ! [A: rat,B: rat] :
      ( ( ( plus_plus_rat @ A @ B )
        = A )
      = ( B = zero_zero_rat ) ) ).

% add_cancel_left_right
thf(fact_353_add__cancel__left__right,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ( plus_p4538020629002901425atural @ A @ B )
        = A )
      = ( B = zero_z2226904508553997617atural ) ) ).

% add_cancel_left_right
thf(fact_354_add__cancel__left__left,axiom,
    ! [B: nat,A: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = A )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_left_left
thf(fact_355_add__cancel__left__left,axiom,
    ! [B: int,A: int] :
      ( ( ( plus_plus_int @ B @ A )
        = A )
      = ( B = zero_zero_int ) ) ).

% add_cancel_left_left
thf(fact_356_add__cancel__left__left,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ B @ A )
        = A )
      = ( B = zero_z3403309356797280102nteger ) ) ).

% add_cancel_left_left
thf(fact_357_add__cancel__left__left,axiom,
    ! [B: rat,A: rat] :
      ( ( ( plus_plus_rat @ B @ A )
        = A )
      = ( B = zero_zero_rat ) ) ).

% add_cancel_left_left
thf(fact_358_add__cancel__left__left,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( ( plus_p4538020629002901425atural @ B @ A )
        = A )
      = ( B = zero_z2226904508553997617atural ) ) ).

% add_cancel_left_left
thf(fact_359_double__zero__sym,axiom,
    ! [A: int] :
      ( ( zero_zero_int
        = ( plus_plus_int @ A @ A ) )
      = ( A = zero_zero_int ) ) ).

% double_zero_sym
thf(fact_360_double__zero__sym,axiom,
    ! [A: code_integer] :
      ( ( zero_z3403309356797280102nteger
        = ( plus_p5714425477246183910nteger @ A @ A ) )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% double_zero_sym
thf(fact_361_double__zero__sym,axiom,
    ! [A: rat] :
      ( ( zero_zero_rat
        = ( plus_plus_rat @ A @ A ) )
      = ( A = zero_zero_rat ) ) ).

% double_zero_sym
thf(fact_362_add_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% add.right_neutral
thf(fact_363_add_Oright__neutral,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ A @ zero_zero_int )
      = A ) ).

% add.right_neutral
thf(fact_364_add_Oright__neutral,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ A @ zero_z3403309356797280102nteger )
      = A ) ).

% add.right_neutral
thf(fact_365_add_Oright__neutral,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ A @ zero_zero_rat )
      = A ) ).

% add.right_neutral
thf(fact_366_add_Oright__neutral,axiom,
    ! [A: code_natural] :
      ( ( plus_p4538020629002901425atural @ A @ zero_z2226904508553997617atural )
      = A ) ).

% add.right_neutral
thf(fact_367_add__is__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = zero_zero_nat )
      = ( ( M = zero_zero_nat )
        & ( N = zero_zero_nat ) ) ) ).

% add_is_0
thf(fact_368_Nat_Oadd__0__right,axiom,
    ! [M: nat] :
      ( ( plus_plus_nat @ M @ zero_zero_nat )
      = M ) ).

% Nat.add_0_right
thf(fact_369_nat__add__left__cancel__le,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% nat_add_left_cancel_le
thf(fact_370_add__le__same__cancel1,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ B @ A ) @ B )
      = ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% add_le_same_cancel1
thf(fact_371_add__le__same__cancel1,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( ord_le1926595141338095240atural @ ( plus_p4538020629002901425atural @ B @ A ) @ B )
      = ( ord_le1926595141338095240atural @ A @ zero_z2226904508553997617atural ) ) ).

% add_le_same_cancel1
thf(fact_372_add__le__same__cancel1,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ B @ A ) @ B )
      = ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ).

% add_le_same_cancel1
thf(fact_373_add__le__same__cancel1,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ B @ A ) @ B )
      = ( ord_less_eq_nat @ A @ zero_zero_nat ) ) ).

% add_le_same_cancel1
thf(fact_374_add__le__same__cancel1,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ B @ A ) @ B )
      = ( ord_less_eq_int @ A @ zero_zero_int ) ) ).

% add_le_same_cancel1
thf(fact_375_add__le__same__cancel2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ B )
      = ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% add_le_same_cancel2
thf(fact_376_add__le__same__cancel2,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ ( plus_p4538020629002901425atural @ A @ B ) @ B )
      = ( ord_le1926595141338095240atural @ A @ zero_z2226904508553997617atural ) ) ).

% add_le_same_cancel2
thf(fact_377_add__le__same__cancel2,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ A @ B ) @ B )
      = ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ).

% add_le_same_cancel2
thf(fact_378_add__le__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = ( ord_less_eq_nat @ A @ zero_zero_nat ) ) ).

% add_le_same_cancel2
thf(fact_379_add__le__same__cancel2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ A @ B ) @ B )
      = ( ord_less_eq_int @ A @ zero_zero_int ) ) ).

% add_le_same_cancel2
thf(fact_380_le__add__same__cancel1,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ ( plus_p5714425477246183910nteger @ A @ B ) )
      = ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B ) ) ).

% le_add_same_cancel1
thf(fact_381_le__add__same__cancel1,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ ( plus_p4538020629002901425atural @ A @ B ) )
      = ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B ) ) ).

% le_add_same_cancel1
thf(fact_382_le__add__same__cancel1,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ ( plus_plus_rat @ A @ B ) )
      = ( ord_less_eq_rat @ zero_zero_rat @ B ) ) ).

% le_add_same_cancel1
thf(fact_383_le__add__same__cancel1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = ( ord_less_eq_nat @ zero_zero_nat @ B ) ) ).

% le_add_same_cancel1
thf(fact_384_le__add__same__cancel1,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ ( plus_plus_int @ A @ B ) )
      = ( ord_less_eq_int @ zero_zero_int @ B ) ) ).

% le_add_same_cancel1
thf(fact_385_le__add__same__cancel2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ ( plus_p5714425477246183910nteger @ B @ A ) )
      = ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B ) ) ).

% le_add_same_cancel2
thf(fact_386_le__add__same__cancel2,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ ( plus_p4538020629002901425atural @ B @ A ) )
      = ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B ) ) ).

% le_add_same_cancel2
thf(fact_387_le__add__same__cancel2,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ ( plus_plus_rat @ B @ A ) )
      = ( ord_less_eq_rat @ zero_zero_rat @ B ) ) ).

% le_add_same_cancel2
thf(fact_388_le__add__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ ( plus_plus_nat @ B @ A ) )
      = ( ord_less_eq_nat @ zero_zero_nat @ B ) ) ).

% le_add_same_cancel2
thf(fact_389_le__add__same__cancel2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ ( plus_plus_int @ B @ A ) )
      = ( ord_less_eq_int @ zero_zero_int @ B ) ) ).

% le_add_same_cancel2
thf(fact_390_double__add__le__zero__iff__single__add__le__zero,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ A ) @ zero_z3403309356797280102nteger )
      = ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% double_add_le_zero_iff_single_add_le_zero
thf(fact_391_double__add__le__zero__iff__single__add__le__zero,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ A @ A ) @ zero_zero_rat )
      = ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ).

% double_add_le_zero_iff_single_add_le_zero
thf(fact_392_double__add__le__zero__iff__single__add__le__zero,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ A @ A ) @ zero_zero_int )
      = ( ord_less_eq_int @ A @ zero_zero_int ) ) ).

% double_add_le_zero_iff_single_add_le_zero
thf(fact_393_zero__le__double__add__iff__zero__le__single__add,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ A @ A ) )
      = ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% zero_le_double_add_iff_zero_le_single_add
thf(fact_394_zero__le__double__add__iff__zero__le__single__add,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( plus_plus_rat @ A @ A ) )
      = ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ).

% zero_le_double_add_iff_zero_le_single_add
thf(fact_395_zero__le__double__add__iff__zero__le__single__add,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( plus_plus_int @ A @ A ) )
      = ( ord_less_eq_int @ zero_zero_int @ A ) ) ).

% zero_le_double_add_iff_zero_le_single_add
thf(fact_396_of__nat__add,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri1314217659103216013at_int @ ( plus_plus_nat @ M @ N ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) ) ).

% of_nat_add
thf(fact_397_of__nat__add,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri1316708129612266289at_nat @ ( plus_plus_nat @ M @ N ) )
      = ( plus_plus_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) ) ) ).

% of_nat_add
thf(fact_398_of__nat__add,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri4939895301339042750nteger @ ( plus_plus_nat @ M @ N ) )
      = ( plus_p5714425477246183910nteger @ ( semiri4939895301339042750nteger @ M ) @ ( semiri4939895301339042750nteger @ N ) ) ) ).

% of_nat_add
thf(fact_399_of__nat__add,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri681578069525770553at_rat @ ( plus_plus_nat @ M @ N ) )
      = ( plus_plus_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ N ) ) ) ).

% of_nat_add
thf(fact_400_of__nat__add,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri3763490453095760265atural @ ( plus_plus_nat @ M @ N ) )
      = ( plus_p4538020629002901425atural @ ( semiri3763490453095760265atural @ M ) @ ( semiri3763490453095760265atural @ N ) ) ) ).

% of_nat_add
thf(fact_401_less__eq__int__code_I1_J,axiom,
    ord_less_eq_int @ zero_zero_int @ zero_zero_int ).

% less_eq_int_code(1)
thf(fact_402_nonneg__int__cases,axiom,
    ! [K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ~ ! [N2: nat] :
            ( K
           != ( semiri1314217659103216013at_int @ N2 ) ) ) ).

% nonneg_int_cases
thf(fact_403_zero__le__imp__eq__int,axiom,
    ! [K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ? [N2: nat] :
          ( K
          = ( semiri1314217659103216013at_int @ N2 ) ) ) ).

% zero_le_imp_eq_int
thf(fact_404_int__if,axiom,
    ! [P: $o,A: nat,B: nat] :
      ( ( P
       => ( ( semiri1314217659103216013at_int @ ( if_nat @ P @ A @ B ) )
          = ( semiri1314217659103216013at_int @ A ) ) )
      & ( ~ P
       => ( ( semiri1314217659103216013at_int @ ( if_nat @ P @ A @ B ) )
          = ( semiri1314217659103216013at_int @ B ) ) ) ) ).

% int_if
thf(fact_405_zero__integer_Orsp,axiom,
    zero_zero_int = zero_zero_int ).

% zero_integer.rsp
thf(fact_406_nat__int__comparison_I1_J,axiom,
    ( ( ^ [Y3: nat,Z: nat] : Y3 = Z )
    = ( ^ [A2: nat,B2: nat] :
          ( ( semiri1314217659103216013at_int @ A2 )
          = ( semiri1314217659103216013at_int @ B2 ) ) ) ) ).

% nat_int_comparison(1)
thf(fact_407_is__num__normalize_I1_J,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
      = ( plus_p5714425477246183910nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) ) ) ).

% is_num_normalize(1)
thf(fact_408_is__num__normalize_I1_J,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( plus_plus_rat @ ( plus_plus_rat @ A @ B ) @ C )
      = ( plus_plus_rat @ A @ ( plus_plus_rat @ B @ C ) ) ) ).

% is_num_normalize(1)
thf(fact_409_is__num__normalize_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% is_num_normalize(1)
thf(fact_410_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: code_integer,J: code_integer,K: code_integer,L: code_integer] :
      ( ( ( I = J )
        & ( K = L ) )
     => ( ( plus_p5714425477246183910nteger @ I @ K )
        = ( plus_p5714425477246183910nteger @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_411_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( I = J )
        & ( K = L ) )
     => ( ( plus_plus_rat @ I @ K )
        = ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_412_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( I = J )
        & ( K = L ) )
     => ( ( plus_plus_nat @ I @ K )
        = ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_413_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( I = J )
        & ( K = L ) )
     => ( ( plus_plus_int @ I @ K )
        = ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_414_group__cancel_Oadd1,axiom,
    ! [A4: code_integer,K: code_integer,A: code_integer,B: code_integer] :
      ( ( A4
        = ( plus_p5714425477246183910nteger @ K @ A ) )
     => ( ( plus_p5714425477246183910nteger @ A4 @ B )
        = ( plus_p5714425477246183910nteger @ K @ ( plus_p5714425477246183910nteger @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_415_group__cancel_Oadd1,axiom,
    ! [A4: rat,K: rat,A: rat,B: rat] :
      ( ( A4
        = ( plus_plus_rat @ K @ A ) )
     => ( ( plus_plus_rat @ A4 @ B )
        = ( plus_plus_rat @ K @ ( plus_plus_rat @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_416_group__cancel_Oadd1,axiom,
    ! [A4: nat,K: nat,A: nat,B: nat] :
      ( ( A4
        = ( plus_plus_nat @ K @ A ) )
     => ( ( plus_plus_nat @ A4 @ B )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_417_group__cancel_Oadd1,axiom,
    ! [A4: int,K: int,A: int,B: int] :
      ( ( A4
        = ( plus_plus_int @ K @ A ) )
     => ( ( plus_plus_int @ A4 @ B )
        = ( plus_plus_int @ K @ ( plus_plus_int @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_418_group__cancel_Oadd2,axiom,
    ! [B4: code_integer,K: code_integer,B: code_integer,A: code_integer] :
      ( ( B4
        = ( plus_p5714425477246183910nteger @ K @ B ) )
     => ( ( plus_p5714425477246183910nteger @ A @ B4 )
        = ( plus_p5714425477246183910nteger @ K @ ( plus_p5714425477246183910nteger @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_419_group__cancel_Oadd2,axiom,
    ! [B4: rat,K: rat,B: rat,A: rat] :
      ( ( B4
        = ( plus_plus_rat @ K @ B ) )
     => ( ( plus_plus_rat @ A @ B4 )
        = ( plus_plus_rat @ K @ ( plus_plus_rat @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_420_group__cancel_Oadd2,axiom,
    ! [B4: nat,K: nat,B: nat,A: nat] :
      ( ( B4
        = ( plus_plus_nat @ K @ B ) )
     => ( ( plus_plus_nat @ A @ B4 )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_421_group__cancel_Oadd2,axiom,
    ! [B4: int,K: int,B: int,A: int] :
      ( ( B4
        = ( plus_plus_int @ K @ B ) )
     => ( ( plus_plus_int @ A @ B4 )
        = ( plus_plus_int @ K @ ( plus_plus_int @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_422_dbl__def,axiom,
    ( neg_nu8804712462038260780nteger
    = ( ^ [X: code_integer] : ( plus_p5714425477246183910nteger @ X @ X ) ) ) ).

% dbl_def
thf(fact_423_dbl__def,axiom,
    ( neg_numeral_dbl_rat
    = ( ^ [X: rat] : ( plus_plus_rat @ X @ X ) ) ) ).

% dbl_def
thf(fact_424_dbl__def,axiom,
    ( neg_numeral_dbl_int
    = ( ^ [X: int] : ( plus_plus_int @ X @ X ) ) ) ).

% dbl_def
thf(fact_425_add_Oassoc,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
      = ( plus_p5714425477246183910nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) ) ) ).

% add.assoc
thf(fact_426_add_Oassoc,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( plus_plus_rat @ ( plus_plus_rat @ A @ B ) @ C )
      = ( plus_plus_rat @ A @ ( plus_plus_rat @ B @ C ) ) ) ).

% add.assoc
thf(fact_427_add_Oassoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% add.assoc
thf(fact_428_add_Oassoc,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% add.assoc
thf(fact_429_add_Oleft__cancel,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ A @ B )
        = ( plus_p5714425477246183910nteger @ A @ C ) )
      = ( B = C ) ) ).

% add.left_cancel
thf(fact_430_add_Oleft__cancel,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ( plus_plus_rat @ A @ B )
        = ( plus_plus_rat @ A @ C ) )
      = ( B = C ) ) ).

% add.left_cancel
thf(fact_431_add_Oleft__cancel,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( plus_plus_int @ A @ B )
        = ( plus_plus_int @ A @ C ) )
      = ( B = C ) ) ).

% add.left_cancel
thf(fact_432_add_Oright__cancel,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ B @ A )
        = ( plus_p5714425477246183910nteger @ C @ A ) )
      = ( B = C ) ) ).

% add.right_cancel
thf(fact_433_add_Oright__cancel,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ( plus_plus_rat @ B @ A )
        = ( plus_plus_rat @ C @ A ) )
      = ( B = C ) ) ).

% add.right_cancel
thf(fact_434_add_Oright__cancel,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ( plus_plus_int @ B @ A )
        = ( plus_plus_int @ C @ A ) )
      = ( B = C ) ) ).

% add.right_cancel
thf(fact_435_ab__semigroup__add__class_Oadd_Ocommute,axiom,
    ( plus_p5714425477246183910nteger
    = ( ^ [A2: code_integer,B2: code_integer] : ( plus_p5714425477246183910nteger @ B2 @ A2 ) ) ) ).

% ab_semigroup_add_class.add.commute
thf(fact_436_ab__semigroup__add__class_Oadd_Ocommute,axiom,
    ( plus_plus_rat
    = ( ^ [A2: rat,B2: rat] : ( plus_plus_rat @ B2 @ A2 ) ) ) ).

% ab_semigroup_add_class.add.commute
thf(fact_437_ab__semigroup__add__class_Oadd_Ocommute,axiom,
    ( plus_plus_nat
    = ( ^ [A2: nat,B2: nat] : ( plus_plus_nat @ B2 @ A2 ) ) ) ).

% ab_semigroup_add_class.add.commute
thf(fact_438_ab__semigroup__add__class_Oadd_Ocommute,axiom,
    ( plus_plus_int
    = ( ^ [A2: int,B2: int] : ( plus_plus_int @ B2 @ A2 ) ) ) ).

% ab_semigroup_add_class.add.commute
thf(fact_439_ab__semigroup__add__class_Oadd_Oleft__commute,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( plus_p5714425477246183910nteger @ B @ ( plus_p5714425477246183910nteger @ A @ C ) )
      = ( plus_p5714425477246183910nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) ) ) ).

% ab_semigroup_add_class.add.left_commute
thf(fact_440_ab__semigroup__add__class_Oadd_Oleft__commute,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( plus_plus_rat @ B @ ( plus_plus_rat @ A @ C ) )
      = ( plus_plus_rat @ A @ ( plus_plus_rat @ B @ C ) ) ) ).

% ab_semigroup_add_class.add.left_commute
thf(fact_441_ab__semigroup__add__class_Oadd_Oleft__commute,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( plus_plus_nat @ B @ ( plus_plus_nat @ A @ C ) )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% ab_semigroup_add_class.add.left_commute
thf(fact_442_ab__semigroup__add__class_Oadd_Oleft__commute,axiom,
    ! [B: int,A: int,C: int] :
      ( ( plus_plus_int @ B @ ( plus_plus_int @ A @ C ) )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% ab_semigroup_add_class.add.left_commute
thf(fact_443_add__left__imp__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ A @ B )
        = ( plus_p5714425477246183910nteger @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_444_add__left__imp__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ( plus_plus_rat @ A @ B )
        = ( plus_plus_rat @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_445_add__left__imp__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = ( plus_plus_nat @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_446_add__left__imp__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( plus_plus_int @ A @ B )
        = ( plus_plus_int @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_447_add__right__imp__eq,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ B @ A )
        = ( plus_p5714425477246183910nteger @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_448_add__right__imp__eq,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ( plus_plus_rat @ B @ A )
        = ( plus_plus_rat @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_449_add__right__imp__eq,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = ( plus_plus_nat @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_450_add__right__imp__eq,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ( plus_plus_int @ B @ A )
        = ( plus_plus_int @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_451_int__int__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ( semiri1314217659103216013at_int @ M )
        = ( semiri1314217659103216013at_int @ N ) )
      = ( M = N ) ) ).

% int_int_eq
thf(fact_452_verit__la__generic,axiom,
    ! [A: int,X2: int] :
      ( ( ord_less_eq_int @ A @ X2 )
      | ( A = X2 )
      | ( ord_less_eq_int @ X2 @ A ) ) ).

% verit_la_generic
thf(fact_453_fails__wait,axiom,
    ! [X2: nat,H: heap_e7401611519738050253t_unit] :
      ~ ( time_f8834461667527620124t_unit @ ( heap_Time_wait @ X2 ) @ H ) ).

% fails_wait
thf(fact_454_size__neq__size__imp__neq,axiom,
    ! [X2: list_nat,Y: list_nat] :
      ( ( ( size_size_list_nat @ X2 )
       != ( size_size_list_nat @ Y ) )
     => ( X2 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_455_size__neq__size__imp__neq,axiom,
    ! [X2: list_int,Y: list_int] :
      ( ( ( size_size_list_int @ X2 )
       != ( size_size_list_int @ Y ) )
     => ( X2 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_456_size__neq__size__imp__neq,axiom,
    ! [X2: num,Y: num] :
      ( ( ( size_size_num @ X2 )
       != ( size_size_num @ Y ) )
     => ( X2 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_457_size__neq__size__imp__neq,axiom,
    ! [X2: list_o,Y: list_o] :
      ( ( ( size_size_list_o @ X2 )
       != ( size_size_list_o @ Y ) )
     => ( X2 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_458_size__neq__size__imp__neq,axiom,
    ! [X2: char,Y: char] :
      ( ( ( size_size_char @ X2 )
       != ( size_size_char @ Y ) )
     => ( X2 != Y ) ) ).

% size_neq_size_imp_neq
thf(fact_459_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I: code_integer,J: code_integer,K: code_integer,L: code_integer] :
      ( ( ( ord_le3102999989581377725nteger @ I @ J )
        & ( K = L ) )
     => ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ I @ K ) @ ( plus_p5714425477246183910nteger @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(3)
thf(fact_460_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( ord_less_eq_rat @ I @ J )
        & ( K = L ) )
     => ( ord_less_eq_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(3)
thf(fact_461_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( K = L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(3)
thf(fact_462_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( ord_less_eq_int @ I @ J )
        & ( K = L ) )
     => ( ord_less_eq_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(3)
thf(fact_463_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I: code_integer,J: code_integer,K: code_integer,L: code_integer] :
      ( ( ( I = J )
        & ( ord_le3102999989581377725nteger @ K @ L ) )
     => ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ I @ K ) @ ( plus_p5714425477246183910nteger @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(2)
thf(fact_464_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( I = J )
        & ( ord_less_eq_rat @ K @ L ) )
     => ( ord_less_eq_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(2)
thf(fact_465_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( I = J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(2)
thf(fact_466_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( I = J )
        & ( ord_less_eq_int @ K @ L ) )
     => ( ord_less_eq_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(2)
thf(fact_467_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I: code_integer,J: code_integer,K: code_integer,L: code_integer] :
      ( ( ( ord_le3102999989581377725nteger @ I @ J )
        & ( ord_le3102999989581377725nteger @ K @ L ) )
     => ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ I @ K ) @ ( plus_p5714425477246183910nteger @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_468_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( ord_less_eq_rat @ I @ J )
        & ( ord_less_eq_rat @ K @ L ) )
     => ( ord_less_eq_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_469_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_470_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( ord_less_eq_int @ I @ J )
        & ( ord_less_eq_int @ K @ L ) )
     => ( ord_less_eq_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_471_add__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ C @ D )
       => ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ ( plus_p5714425477246183910nteger @ B @ D ) ) ) ) ).

% add_mono
thf(fact_472_add__mono,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ C @ D )
       => ( ord_less_eq_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ D ) ) ) ) ).

% add_mono
thf(fact_473_add__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% add_mono
thf(fact_474_add__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ C @ D )
       => ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ D ) ) ) ) ).

% add_mono
thf(fact_475_add__left__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ C @ A ) @ ( plus_p5714425477246183910nteger @ C @ B ) ) ) ).

% add_left_mono
thf(fact_476_add__left__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ord_less_eq_rat @ ( plus_plus_rat @ C @ A ) @ ( plus_plus_rat @ C @ B ) ) ) ).

% add_left_mono
thf(fact_477_add__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) ) ) ).

% add_left_mono
thf(fact_478_add__left__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ord_less_eq_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) ) ) ).

% add_left_mono
thf(fact_479_less__eqE,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ~ ! [C3: nat] :
            ( B
           != ( plus_plus_nat @ A @ C3 ) ) ) ).

% less_eqE
thf(fact_480_add__right__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ ( plus_p5714425477246183910nteger @ B @ C ) ) ) ).

% add_right_mono
thf(fact_481_add__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ord_less_eq_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ C ) ) ) ).

% add_right_mono
thf(fact_482_add__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) ) ) ).

% add_right_mono
thf(fact_483_add__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) ) ) ).

% add_right_mono
thf(fact_484_le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [A2: nat,B2: nat] :
        ? [C4: nat] :
          ( B2
          = ( plus_plus_nat @ A2 @ C4 ) ) ) ) ).

% le_iff_add
thf(fact_485_add__le__imp__le__left,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ C @ A ) @ ( plus_p5714425477246183910nteger @ C @ B ) )
     => ( ord_le3102999989581377725nteger @ A @ B ) ) ).

% add_le_imp_le_left
thf(fact_486_add__le__imp__le__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ C @ A ) @ ( plus_plus_rat @ C @ B ) )
     => ( ord_less_eq_rat @ A @ B ) ) ).

% add_le_imp_le_left
thf(fact_487_add__le__imp__le__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
     => ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_imp_le_left
thf(fact_488_add__le__imp__le__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
     => ( ord_less_eq_int @ A @ B ) ) ).

% add_le_imp_le_left
thf(fact_489_add__le__imp__le__right,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ ( plus_p5714425477246183910nteger @ B @ C ) )
     => ( ord_le3102999989581377725nteger @ A @ B ) ) ).

% add_le_imp_le_right
thf(fact_490_add__le__imp__le__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ C ) )
     => ( ord_less_eq_rat @ A @ B ) ) ).

% add_le_imp_le_right
thf(fact_491_add__le__imp__le__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
     => ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_imp_le_right
thf(fact_492_add__le__imp__le__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
     => ( ord_less_eq_int @ A @ B ) ) ).

% add_le_imp_le_right
thf(fact_493_verit__sum__simplify,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% verit_sum_simplify
thf(fact_494_verit__sum__simplify,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ A @ zero_zero_int )
      = A ) ).

% verit_sum_simplify
thf(fact_495_verit__sum__simplify,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ A @ zero_z3403309356797280102nteger )
      = A ) ).

% verit_sum_simplify
thf(fact_496_verit__sum__simplify,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ A @ zero_zero_rat )
      = A ) ).

% verit_sum_simplify
thf(fact_497_verit__sum__simplify,axiom,
    ! [A: code_natural] :
      ( ( plus_p4538020629002901425atural @ A @ zero_z2226904508553997617atural )
      = A ) ).

% verit_sum_simplify
thf(fact_498_add_Ogroup__left__neutral,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ zero_zero_int @ A )
      = A ) ).

% add.group_left_neutral
thf(fact_499_add_Ogroup__left__neutral,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ zero_z3403309356797280102nteger @ A )
      = A ) ).

% add.group_left_neutral
thf(fact_500_add_Ogroup__left__neutral,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ zero_zero_rat @ A )
      = A ) ).

% add.group_left_neutral
thf(fact_501_add_Ocomm__neutral,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% add.comm_neutral
thf(fact_502_add_Ocomm__neutral,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ A @ zero_zero_int )
      = A ) ).

% add.comm_neutral
thf(fact_503_add_Ocomm__neutral,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ A @ zero_z3403309356797280102nteger )
      = A ) ).

% add.comm_neutral
thf(fact_504_add_Ocomm__neutral,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ A @ zero_zero_rat )
      = A ) ).

% add.comm_neutral
thf(fact_505_add_Ocomm__neutral,axiom,
    ! [A: code_natural] :
      ( ( plus_p4538020629002901425atural @ A @ zero_z2226904508553997617atural )
      = A ) ).

% add.comm_neutral
thf(fact_506_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_507_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ zero_zero_int @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_508_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ zero_z3403309356797280102nteger @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_509_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ zero_zero_rat @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_510_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: code_natural] :
      ( ( plus_p4538020629002901425atural @ zero_z2226904508553997617atural @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_511_plus__nat_Oadd__0,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ N )
      = N ) ).

% plus_nat.add_0
thf(fact_512_add__eq__self__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = M )
     => ( N = zero_zero_nat ) ) ).

% add_eq_self_zero
thf(fact_513_add__leE,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ~ ( ( ord_less_eq_nat @ M @ N )
         => ~ ( ord_less_eq_nat @ K @ N ) ) ) ).

% add_leE
thf(fact_514_le__add1,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ N @ M ) ) ).

% le_add1
thf(fact_515_le__add2,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ M @ N ) ) ).

% le_add2
thf(fact_516_add__leD1,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% add_leD1
thf(fact_517_add__leD2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ( ord_less_eq_nat @ K @ N ) ) ).

% add_leD2
thf(fact_518_le__Suc__ex,axiom,
    ! [K: nat,L: nat] :
      ( ( ord_less_eq_nat @ K @ L )
     => ? [N2: nat] :
          ( L
          = ( plus_plus_nat @ K @ N2 ) ) ) ).

% le_Suc_ex
thf(fact_519_add__le__mono,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ K @ L )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ) ).

% add_le_mono
thf(fact_520_add__le__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).

% add_le_mono1
thf(fact_521_trans__le__add1,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ I @ ( plus_plus_nat @ J @ M ) ) ) ).

% trans_le_add1
thf(fact_522_trans__le__add2,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ I @ ( plus_plus_nat @ M @ J ) ) ) ).

% trans_le_add2
thf(fact_523_nat__le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [M2: nat,N3: nat] :
        ? [K2: nat] :
          ( N3
          = ( plus_plus_nat @ M2 @ K2 ) ) ) ) ).

% nat_le_iff_add
thf(fact_524_add__decreasing,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ C @ B )
       => ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ B ) ) ) ).

% add_decreasing
thf(fact_525_add__decreasing,axiom,
    ! [A: code_natural,C: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ zero_z2226904508553997617atural )
     => ( ( ord_le1926595141338095240atural @ C @ B )
       => ( ord_le1926595141338095240atural @ ( plus_p4538020629002901425atural @ A @ C ) @ B ) ) ) ).

% add_decreasing
thf(fact_526_add__decreasing,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ C @ B )
       => ( ord_less_eq_rat @ ( plus_plus_rat @ A @ C ) @ B ) ) ) ).

% add_decreasing
thf(fact_527_add__decreasing,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ C @ B )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ B ) ) ) ).

% add_decreasing
thf(fact_528_add__decreasing,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( ord_less_eq_int @ C @ B )
       => ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ B ) ) ) ).

% add_decreasing
thf(fact_529_add__increasing,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ B @ C )
       => ( ord_le3102999989581377725nteger @ B @ ( plus_p5714425477246183910nteger @ A @ C ) ) ) ) ).

% add_increasing
thf(fact_530_add__increasing,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ B @ C )
       => ( ord_le1926595141338095240atural @ B @ ( plus_p4538020629002901425atural @ A @ C ) ) ) ) ).

% add_increasing
thf(fact_531_add__increasing,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ord_less_eq_rat @ B @ ( plus_plus_rat @ A @ C ) ) ) ) ).

% add_increasing
thf(fact_532_add__increasing,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_eq_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_increasing
thf(fact_533_add__increasing,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ B @ C )
       => ( ord_less_eq_int @ B @ ( plus_plus_int @ A @ C ) ) ) ) ).

% add_increasing
thf(fact_534_add__decreasing2,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ A @ B )
       => ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ B ) ) ) ).

% add_decreasing2
thf(fact_535_add__decreasing2,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ C @ zero_z2226904508553997617atural )
     => ( ( ord_le1926595141338095240atural @ A @ B )
       => ( ord_le1926595141338095240atural @ ( plus_p4538020629002901425atural @ A @ C ) @ B ) ) ) ).

% add_decreasing2
thf(fact_536_add__decreasing2,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_eq_rat @ C @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ A @ B )
       => ( ord_less_eq_rat @ ( plus_plus_rat @ A @ C ) @ B ) ) ) ).

% add_decreasing2
thf(fact_537_add__decreasing2,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ C @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ B ) ) ) ).

% add_decreasing2
thf(fact_538_add__decreasing2,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ C @ zero_zero_int )
     => ( ( ord_less_eq_int @ A @ B )
       => ( ord_less_eq_int @ ( plus_plus_int @ A @ C ) @ B ) ) ) ).

% add_decreasing2
thf(fact_539_add__increasing2,axiom,
    ! [C: code_integer,B: code_integer,A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
     => ( ( ord_le3102999989581377725nteger @ B @ A )
       => ( ord_le3102999989581377725nteger @ B @ ( plus_p5714425477246183910nteger @ A @ C ) ) ) ) ).

% add_increasing2
thf(fact_540_add__increasing2,axiom,
    ! [C: code_natural,B: code_natural,A: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
     => ( ( ord_le1926595141338095240atural @ B @ A )
       => ( ord_le1926595141338095240atural @ B @ ( plus_p4538020629002901425atural @ A @ C ) ) ) ) ).

% add_increasing2
thf(fact_541_add__increasing2,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ C )
     => ( ( ord_less_eq_rat @ B @ A )
       => ( ord_less_eq_rat @ B @ ( plus_plus_rat @ A @ C ) ) ) ) ).

% add_increasing2
thf(fact_542_add__increasing2,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ C )
     => ( ( ord_less_eq_nat @ B @ A )
       => ( ord_less_eq_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_increasing2
thf(fact_543_add__increasing2,axiom,
    ! [C: int,B: int,A: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ C )
     => ( ( ord_less_eq_int @ B @ A )
       => ( ord_less_eq_int @ B @ ( plus_plus_int @ A @ C ) ) ) ) ).

% add_increasing2
thf(fact_544_add__nonneg__nonneg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ A @ B ) ) ) ) ).

% add_nonneg_nonneg
thf(fact_545_add__nonneg__nonneg,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( plus_p4538020629002901425atural @ A @ B ) ) ) ) ).

% add_nonneg_nonneg
thf(fact_546_add__nonneg__nonneg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_eq_rat @ zero_zero_rat @ ( plus_plus_rat @ A @ B ) ) ) ) ).

% add_nonneg_nonneg
thf(fact_547_add__nonneg__nonneg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_eq_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_nonneg_nonneg
thf(fact_548_add__nonneg__nonneg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ord_less_eq_int @ zero_zero_int @ ( plus_plus_int @ A @ B ) ) ) ) ).

% add_nonneg_nonneg
thf(fact_549_add__nonpos__nonpos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% add_nonpos_nonpos
thf(fact_550_add__nonpos__nonpos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ zero_z2226904508553997617atural )
     => ( ( ord_le1926595141338095240atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le1926595141338095240atural @ ( plus_p4538020629002901425atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% add_nonpos_nonpos
thf(fact_551_add__nonpos__nonpos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ B @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( plus_plus_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% add_nonpos_nonpos
thf(fact_552_add__nonpos__nonpos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_nonpos_nonpos
thf(fact_553_add__nonpos__nonpos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( ord_less_eq_int @ B @ zero_zero_int )
       => ( ord_less_eq_int @ ( plus_plus_int @ A @ B ) @ zero_zero_int ) ) ) ).

% add_nonpos_nonpos
thf(fact_554_add__nonneg__eq__0__iff,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ X2 )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ Y )
       => ( ( ( plus_p5714425477246183910nteger @ X2 @ Y )
            = zero_z3403309356797280102nteger )
          = ( ( X2 = zero_z3403309356797280102nteger )
            & ( Y = zero_z3403309356797280102nteger ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_555_add__nonneg__eq__0__iff,axiom,
    ! [X2: code_natural,Y: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ X2 )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ Y )
       => ( ( ( plus_p4538020629002901425atural @ X2 @ Y )
            = zero_z2226904508553997617atural )
          = ( ( X2 = zero_z2226904508553997617atural )
            & ( Y = zero_z2226904508553997617atural ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_556_add__nonneg__eq__0__iff,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X2 )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ Y )
       => ( ( ( plus_plus_rat @ X2 @ Y )
            = zero_zero_rat )
          = ( ( X2 = zero_zero_rat )
            & ( Y = zero_zero_rat ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_557_add__nonneg__eq__0__iff,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ X2 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ Y )
       => ( ( ( plus_plus_nat @ X2 @ Y )
            = zero_zero_nat )
          = ( ( X2 = zero_zero_nat )
            & ( Y = zero_zero_nat ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_558_add__nonneg__eq__0__iff,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X2 )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y )
       => ( ( ( plus_plus_int @ X2 @ Y )
            = zero_zero_int )
          = ( ( X2 = zero_zero_int )
            & ( Y = zero_zero_int ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_559_add__nonpos__eq__0__iff,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le3102999989581377725nteger @ X2 @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ Y @ zero_z3403309356797280102nteger )
       => ( ( ( plus_p5714425477246183910nteger @ X2 @ Y )
            = zero_z3403309356797280102nteger )
          = ( ( X2 = zero_z3403309356797280102nteger )
            & ( Y = zero_z3403309356797280102nteger ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_560_add__nonpos__eq__0__iff,axiom,
    ! [X2: code_natural,Y: code_natural] :
      ( ( ord_le1926595141338095240atural @ X2 @ zero_z2226904508553997617atural )
     => ( ( ord_le1926595141338095240atural @ Y @ zero_z2226904508553997617atural )
       => ( ( ( plus_p4538020629002901425atural @ X2 @ Y )
            = zero_z2226904508553997617atural )
          = ( ( X2 = zero_z2226904508553997617atural )
            & ( Y = zero_z2226904508553997617atural ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_561_add__nonpos__eq__0__iff,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ X2 @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ Y @ zero_zero_rat )
       => ( ( ( plus_plus_rat @ X2 @ Y )
            = zero_zero_rat )
          = ( ( X2 = zero_zero_rat )
            & ( Y = zero_zero_rat ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_562_add__nonpos__eq__0__iff,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X2 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ Y @ zero_zero_nat )
       => ( ( ( plus_plus_nat @ X2 @ Y )
            = zero_zero_nat )
          = ( ( X2 = zero_zero_nat )
            & ( Y = zero_zero_nat ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_563_add__nonpos__eq__0__iff,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ X2 @ zero_zero_int )
     => ( ( ord_less_eq_int @ Y @ zero_zero_int )
       => ( ( ( plus_plus_int @ X2 @ Y )
            = zero_zero_int )
          = ( ( X2 = zero_zero_int )
            & ( Y = zero_zero_int ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_564_time__bind,axiom,
    ! [M: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,F: a > heap_Time_Heap_a] :
      ( ( ( ~ ( time_fails_a @ M @ H )
          & ~ ( time_fails_a @ ( F @ ( time_the_res_a @ M @ H ) ) @ ( time_the_heap_a @ M @ H ) ) )
       => ( ( time_time_a @ ( heap_Time_bind_a_a @ M @ F ) @ H )
          = ( plus_plus_nat @ ( time_time_a @ M @ H ) @ ( time_time_a @ ( F @ ( time_the_res_a @ M @ H ) ) @ ( time_the_heap_a @ M @ H ) ) ) ) )
      & ( ~ ( ~ ( time_fails_a @ M @ H )
            & ~ ( time_fails_a @ ( F @ ( time_the_res_a @ M @ H ) ) @ ( time_the_heap_a @ M @ H ) ) )
       => ( ( time_time_a @ ( heap_Time_bind_a_a @ M @ F ) @ H )
          = zero_zero_nat ) ) ) ).

% time_bind
thf(fact_565_time__bind,axiom,
    ! [M: heap_Time_Heap_a,H: heap_e7401611519738050253t_unit,F: a > heap_T5738788834812785303t_unit] :
      ( ( ( ~ ( time_fails_a @ M @ H )
          & ~ ( time_f8834461667527620124t_unit @ ( F @ ( time_the_res_a @ M @ H ) ) @ ( time_the_heap_a @ M @ H ) ) )
       => ( ( time_t4224138285095624986t_unit @ ( heap_T8685611227969916822t_unit @ M @ F ) @ H )
          = ( plus_plus_nat @ ( time_time_a @ M @ H ) @ ( time_t4224138285095624986t_unit @ ( F @ ( time_the_res_a @ M @ H ) ) @ ( time_the_heap_a @ M @ H ) ) ) ) )
      & ( ~ ( ~ ( time_fails_a @ M @ H )
            & ~ ( time_f8834461667527620124t_unit @ ( F @ ( time_the_res_a @ M @ H ) ) @ ( time_the_heap_a @ M @ H ) ) )
       => ( ( time_t4224138285095624986t_unit @ ( heap_T8685611227969916822t_unit @ M @ F ) @ H )
          = zero_zero_nat ) ) ) ).

% time_bind
thf(fact_566_time__bind,axiom,
    ! [M: heap_T5738788834812785303t_unit,H: heap_e7401611519738050253t_unit,F: product_unit > heap_Time_Heap_a] :
      ( ( ( ~ ( time_f8834461667527620124t_unit @ M @ H )
          & ~ ( time_fails_a @ ( F @ ( time_t2745601220510131320t_unit @ M @ H ) ) @ ( time_t3350536682685678164t_unit @ M @ H ) ) )
       => ( ( time_time_a @ ( heap_T757603679106148408unit_a @ M @ F ) @ H )
          = ( plus_plus_nat @ ( time_t4224138285095624986t_unit @ M @ H ) @ ( time_time_a @ ( F @ ( time_t2745601220510131320t_unit @ M @ H ) ) @ ( time_t3350536682685678164t_unit @ M @ H ) ) ) ) )
      & ( ~ ( ~ ( time_f8834461667527620124t_unit @ M @ H )
            & ~ ( time_fails_a @ ( F @ ( time_t2745601220510131320t_unit @ M @ H ) ) @ ( time_t3350536682685678164t_unit @ M @ H ) ) )
       => ( ( time_time_a @ ( heap_T757603679106148408unit_a @ M @ F ) @ H )
          = zero_zero_nat ) ) ) ).

% time_bind
thf(fact_567_time__bind,axiom,
    ! [M: heap_T5738788834812785303t_unit,H: heap_e7401611519738050253t_unit,F: product_unit > heap_T5738788834812785303t_unit] :
      ( ( ( ~ ( time_f8834461667527620124t_unit @ M @ H )
          & ~ ( time_f8834461667527620124t_unit @ ( F @ ( time_t2745601220510131320t_unit @ M @ H ) ) @ ( time_t3350536682685678164t_unit @ M @ H ) ) )
       => ( ( time_t4224138285095624986t_unit @ ( heap_T2633723481742716231t_unit @ M @ F ) @ H )
          = ( plus_plus_nat @ ( time_t4224138285095624986t_unit @ M @ H ) @ ( time_t4224138285095624986t_unit @ ( F @ ( time_t2745601220510131320t_unit @ M @ H ) ) @ ( time_t3350536682685678164t_unit @ M @ H ) ) ) ) )
      & ( ~ ( ~ ( time_f8834461667527620124t_unit @ M @ H )
            & ~ ( time_f8834461667527620124t_unit @ ( F @ ( time_t2745601220510131320t_unit @ M @ H ) ) @ ( time_t3350536682685678164t_unit @ M @ H ) ) )
       => ( ( time_t4224138285095624986t_unit @ ( heap_T2633723481742716231t_unit @ M @ F ) @ H )
          = zero_zero_nat ) ) ) ).

% time_bind
thf(fact_568_imp__le__cong,axiom,
    ! [X2: int,X6: int,P: $o,P2: $o] :
      ( ( X2 = X6 )
     => ( ( ( ord_less_eq_int @ zero_zero_int @ X6 )
         => ( P = P2 ) )
       => ( ( ( ord_less_eq_int @ zero_zero_int @ X2 )
           => P )
          = ( ( ord_less_eq_int @ zero_zero_int @ X6 )
           => P2 ) ) ) ) ).

% imp_le_cong
thf(fact_569_conj__le__cong,axiom,
    ! [X2: int,X6: int,P: $o,P2: $o] :
      ( ( X2 = X6 )
     => ( ( ( ord_less_eq_int @ zero_zero_int @ X6 )
         => ( P = P2 ) )
       => ( ( ( ord_less_eq_int @ zero_zero_int @ X2 )
            & P )
          = ( ( ord_less_eq_int @ zero_zero_int @ X6 )
            & P2 ) ) ) ) ).

% conj_le_cong
thf(fact_570_Euclid__induct,axiom,
    ! [P: nat > nat > $o,A: nat,B: nat] :
      ( ! [A3: nat,B3: nat] :
          ( ( P @ A3 @ B3 )
          = ( P @ B3 @ A3 ) )
     => ( ! [A3: nat] : ( P @ A3 @ zero_zero_nat )
       => ( ! [A3: nat,B3: nat] :
              ( ( P @ A3 @ B3 )
             => ( P @ A3 @ ( plus_plus_nat @ A3 @ B3 ) ) )
         => ( P @ A @ B ) ) ) ) ).

% Euclid_induct
thf(fact_571_add__0__iff,axiom,
    ! [B: nat,A: nat] :
      ( ( B
        = ( plus_plus_nat @ B @ A ) )
      = ( A = zero_zero_nat ) ) ).

% add_0_iff
thf(fact_572_add__0__iff,axiom,
    ! [B: int,A: int] :
      ( ( B
        = ( plus_plus_int @ B @ A ) )
      = ( A = zero_zero_int ) ) ).

% add_0_iff
thf(fact_573_add__0__iff,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( B
        = ( plus_p5714425477246183910nteger @ B @ A ) )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% add_0_iff
thf(fact_574_add__0__iff,axiom,
    ! [B: rat,A: rat] :
      ( ( B
        = ( plus_plus_rat @ B @ A ) )
      = ( A = zero_zero_rat ) ) ).

% add_0_iff
thf(fact_575_of__nat__code,axiom,
    ( semiri1314217659103216013at_int
    = ( ^ [N3: nat] :
          ( semiri8420488043553186161ux_int
          @ ^ [I2: int] : ( plus_plus_int @ I2 @ one_one_int )
          @ N3
          @ zero_zero_int ) ) ) ).

% of_nat_code
thf(fact_576_of__nat__code,axiom,
    ( semiri1316708129612266289at_nat
    = ( ^ [N3: nat] :
          ( semiri8422978514062236437ux_nat
          @ ^ [I2: nat] : ( plus_plus_nat @ I2 @ one_one_nat )
          @ N3
          @ zero_zero_nat ) ) ) ).

% of_nat_code
thf(fact_577_of__nat__code,axiom,
    ( semiri4939895301339042750nteger
    = ( ^ [N3: nat] :
          ( semiri4055485073559036834nteger
          @ ^ [I2: code_integer] : ( plus_p5714425477246183910nteger @ I2 @ one_one_Code_integer )
          @ N3
          @ zero_z3403309356797280102nteger ) ) ) ).

% of_nat_code
thf(fact_578_of__nat__code,axiom,
    ( semiri681578069525770553at_rat
    = ( ^ [N3: nat] :
          ( semiri7787848453975740701ux_rat
          @ ^ [I2: rat] : ( plus_plus_rat @ I2 @ one_one_rat )
          @ N3
          @ zero_zero_rat ) ) ) ).

% of_nat_code
thf(fact_579_of__nat__code,axiom,
    ( semiri3763490453095760265atural
    = ( ^ [N3: nat] :
          ( semiri2879080225315754349atural
          @ ^ [I2: code_natural] : ( plus_p4538020629002901425atural @ I2 @ one_one_Code_natural )
          @ N3
          @ zero_z2226904508553997617atural ) ) ) ).

% of_nat_code
thf(fact_580_of__nat__eq__1__iff,axiom,
    ! [N: nat] :
      ( ( ( semiri1314217659103216013at_int @ N )
        = one_one_int )
      = ( N = one_one_nat ) ) ).

% of_nat_eq_1_iff
thf(fact_581_of__nat__eq__1__iff,axiom,
    ! [N: nat] :
      ( ( ( semiri1316708129612266289at_nat @ N )
        = one_one_nat )
      = ( N = one_one_nat ) ) ).

% of_nat_eq_1_iff
thf(fact_582_of__nat__eq__1__iff,axiom,
    ! [N: nat] :
      ( ( ( semiri4939895301339042750nteger @ N )
        = one_one_Code_integer )
      = ( N = one_one_nat ) ) ).

% of_nat_eq_1_iff
thf(fact_583_of__nat__eq__1__iff,axiom,
    ! [N: nat] :
      ( ( ( semiri681578069525770553at_rat @ N )
        = one_one_rat )
      = ( N = one_one_nat ) ) ).

% of_nat_eq_1_iff
thf(fact_584_of__nat__eq__1__iff,axiom,
    ! [N: nat] :
      ( ( ( semiri3763490453095760265atural @ N )
        = one_one_Code_natural )
      = ( N = one_one_nat ) ) ).

% of_nat_eq_1_iff
thf(fact_585_of__nat__1__eq__iff,axiom,
    ! [N: nat] :
      ( ( one_one_int
        = ( semiri1314217659103216013at_int @ N ) )
      = ( N = one_one_nat ) ) ).

% of_nat_1_eq_iff
thf(fact_586_of__nat__1__eq__iff,axiom,
    ! [N: nat] :
      ( ( one_one_nat
        = ( semiri1316708129612266289at_nat @ N ) )
      = ( N = one_one_nat ) ) ).

% of_nat_1_eq_iff
thf(fact_587_of__nat__1__eq__iff,axiom,
    ! [N: nat] :
      ( ( one_one_Code_integer
        = ( semiri4939895301339042750nteger @ N ) )
      = ( N = one_one_nat ) ) ).

% of_nat_1_eq_iff
thf(fact_588_of__nat__1__eq__iff,axiom,
    ! [N: nat] :
      ( ( one_one_rat
        = ( semiri681578069525770553at_rat @ N ) )
      = ( N = one_one_nat ) ) ).

% of_nat_1_eq_iff
thf(fact_589_of__nat__1__eq__iff,axiom,
    ! [N: nat] :
      ( ( one_one_Code_natural
        = ( semiri3763490453095760265atural @ N ) )
      = ( N = one_one_nat ) ) ).

% of_nat_1_eq_iff
thf(fact_590_of__nat__1,axiom,
    ( ( semiri1314217659103216013at_int @ one_one_nat )
    = one_one_int ) ).

% of_nat_1
thf(fact_591_of__nat__1,axiom,
    ( ( semiri1316708129612266289at_nat @ one_one_nat )
    = one_one_nat ) ).

% of_nat_1
thf(fact_592_of__nat__1,axiom,
    ( ( semiri4939895301339042750nteger @ one_one_nat )
    = one_one_Code_integer ) ).

% of_nat_1
thf(fact_593_of__nat__1,axiom,
    ( ( semiri681578069525770553at_rat @ one_one_nat )
    = one_one_rat ) ).

% of_nat_1
thf(fact_594_of__nat__1,axiom,
    ( ( semiri3763490453095760265atural @ one_one_nat )
    = one_one_Code_natural ) ).

% of_nat_1
thf(fact_595_one__reorient,axiom,
    ! [X2: int] :
      ( ( one_one_int = X2 )
      = ( X2 = one_one_int ) ) ).

% one_reorient
thf(fact_596_one__reorient,axiom,
    ! [X2: nat] :
      ( ( one_one_nat = X2 )
      = ( X2 = one_one_nat ) ) ).

% one_reorient
thf(fact_597_one__reorient,axiom,
    ! [X2: code_integer] :
      ( ( one_one_Code_integer = X2 )
      = ( X2 = one_one_Code_integer ) ) ).

% one_reorient
thf(fact_598_one__reorient,axiom,
    ! [X2: rat] :
      ( ( one_one_rat = X2 )
      = ( X2 = one_one_rat ) ) ).

% one_reorient
thf(fact_599_one__reorient,axiom,
    ! [X2: code_natural] :
      ( ( one_one_Code_natural = X2 )
      = ( X2 = one_one_Code_natural ) ) ).

% one_reorient
thf(fact_600_odd__nonzero,axiom,
    ! [Z2: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ one_one_int @ Z2 ) @ Z2 )
     != zero_zero_int ) ).

% odd_nonzero
thf(fact_601_int__ge__induct,axiom,
    ! [K: int,I: int,P: int > $o] :
      ( ( ord_less_eq_int @ K @ I )
     => ( ( P @ K )
       => ( ! [I3: int] :
              ( ( ord_less_eq_int @ K @ I3 )
             => ( ( P @ I3 )
               => ( P @ ( plus_plus_int @ I3 @ one_one_int ) ) ) )
         => ( P @ I ) ) ) ) ).

% int_ge_induct
thf(fact_602_int__ops_I2_J,axiom,
    ( ( semiri1314217659103216013at_int @ one_one_nat )
    = one_one_int ) ).

% int_ops(2)
thf(fact_603_plus__int__code_I2_J,axiom,
    ! [L: int] :
      ( ( plus_plus_int @ zero_zero_int @ L )
      = L ) ).

% plus_int_code(2)
thf(fact_604_plus__int__code_I1_J,axiom,
    ! [K: int] :
      ( ( plus_plus_int @ K @ zero_zero_int )
      = K ) ).

% plus_int_code(1)
thf(fact_605_le__numeral__extra_I4_J,axiom,
    ord_le3102999989581377725nteger @ one_one_Code_integer @ one_one_Code_integer ).

% le_numeral_extra(4)
thf(fact_606_le__numeral__extra_I4_J,axiom,
    ord_le1926595141338095240atural @ one_one_Code_natural @ one_one_Code_natural ).

% le_numeral_extra(4)
thf(fact_607_le__numeral__extra_I4_J,axiom,
    ord_less_eq_rat @ one_one_rat @ one_one_rat ).

% le_numeral_extra(4)
thf(fact_608_le__numeral__extra_I4_J,axiom,
    ord_less_eq_nat @ one_one_nat @ one_one_nat ).

% le_numeral_extra(4)
thf(fact_609_le__numeral__extra_I4_J,axiom,
    ord_less_eq_int @ one_one_int @ one_one_int ).

% le_numeral_extra(4)
thf(fact_610_zadd__int__left,axiom,
    ! [M: nat,N: nat,Z2: int] :
      ( ( plus_plus_int @ ( semiri1314217659103216013at_int @ M ) @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ Z2 ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ ( plus_plus_nat @ M @ N ) ) @ Z2 ) ) ).

% zadd_int_left
thf(fact_611_int__ops_I5_J,axiom,
    ! [A: nat,B: nat] :
      ( ( semiri1314217659103216013at_int @ ( plus_plus_nat @ A @ B ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) ).

% int_ops(5)
thf(fact_612_int__plus,axiom,
    ! [N: nat,M: nat] :
      ( ( semiri1314217659103216013at_int @ ( plus_plus_nat @ N @ M ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ ( semiri1314217659103216013at_int @ M ) ) ) ).

% int_plus
thf(fact_613_zle__iff__zadd,axiom,
    ( ord_less_eq_int
    = ( ^ [W: int,Z3: int] :
        ? [N3: nat] :
          ( Z3
          = ( plus_plus_int @ W @ ( semiri1314217659103216013at_int @ N3 ) ) ) ) ) ).

% zle_iff_zadd
thf(fact_614_nat__geq__1__eq__neqz,axiom,
    ! [X2: nat] :
      ( ( ord_less_eq_nat @ one_one_nat @ X2 )
      = ( X2 != zero_zero_nat ) ) ).

% nat_geq_1_eq_neqz
thf(fact_615_someI2__bex,axiom,
    ! [A4: set_Pr1261947904930325089at_nat,P: product_prod_nat_nat > $o,Q: product_prod_nat_nat > $o] :
      ( ? [X4: product_prod_nat_nat] :
          ( ( member8440522571783428010at_nat @ X4 @ A4 )
          & ( P @ X4 ) )
     => ( ! [X3: product_prod_nat_nat] :
            ( ( ( member8440522571783428010at_nat @ X3 @ A4 )
              & ( P @ X3 ) )
           => ( Q @ X3 ) )
       => ( Q
          @ ( fChoic6978938873391328853at_nat
            @ ^ [X: product_prod_nat_nat] :
                ( ( member8440522571783428010at_nat @ X @ A4 )
                & ( P @ X ) ) ) ) ) ) ).

% someI2_bex
thf(fact_616_someI2__bex,axiom,
    ! [A4: set_se6260736226359567993nt_int,P: set_Pr958786334691620121nt_int > $o,Q: set_Pr958786334691620121nt_int > $o] :
      ( ? [X4: set_Pr958786334691620121nt_int] :
          ( ( member2340774599025711042nt_int @ X4 @ A4 )
          & ( P @ X4 ) )
     => ( ! [X3: set_Pr958786334691620121nt_int] :
            ( ( ( member2340774599025711042nt_int @ X3 @ A4 )
              & ( P @ X3 ) )
           => ( Q @ X3 ) )
       => ( Q
          @ ( fChoic2749331249758569069nt_int
            @ ^ [X: set_Pr958786334691620121nt_int] :
                ( ( member2340774599025711042nt_int @ X @ A4 )
                & ( P @ X ) ) ) ) ) ) ).

% someI2_bex
thf(fact_617_someI2__bex,axiom,
    ! [A4: set_set_nat,P: set_nat > $o,Q: set_nat > $o] :
      ( ? [X4: set_nat] :
          ( ( member_set_nat @ X4 @ A4 )
          & ( P @ X4 ) )
     => ( ! [X3: set_nat] :
            ( ( ( member_set_nat @ X3 @ A4 )
              & ( P @ X3 ) )
           => ( Q @ X3 ) )
       => ( Q
          @ ( fChoice_set_nat
            @ ^ [X: set_nat] :
                ( ( member_set_nat @ X @ A4 )
                & ( P @ X ) ) ) ) ) ) ).

% someI2_bex
thf(fact_618_someI2__bex,axiom,
    ! [A4: set_nat,P: nat > $o,Q: nat > $o] :
      ( ? [X4: nat] :
          ( ( member_nat @ X4 @ A4 )
          & ( P @ X4 ) )
     => ( ! [X3: nat] :
            ( ( ( member_nat @ X3 @ A4 )
              & ( P @ X3 ) )
           => ( Q @ X3 ) )
       => ( Q
          @ ( fChoice_nat
            @ ^ [X: nat] :
                ( ( member_nat @ X @ A4 )
                & ( P @ X ) ) ) ) ) ) ).

% someI2_bex
thf(fact_619_someI2__bex,axiom,
    ! [A4: set_int,P: int > $o,Q: int > $o] :
      ( ? [X4: int] :
          ( ( member_int @ X4 @ A4 )
          & ( P @ X4 ) )
     => ( ! [X3: int] :
            ( ( ( member_int @ X3 @ A4 )
              & ( P @ X3 ) )
           => ( Q @ X3 ) )
       => ( Q
          @ ( fChoice_int
            @ ^ [X: int] :
                ( ( member_int @ X @ A4 )
                & ( P @ X ) ) ) ) ) ) ).

% someI2_bex
thf(fact_620_not__one__le__zero,axiom,
    ~ ( ord_le3102999989581377725nteger @ one_one_Code_integer @ zero_z3403309356797280102nteger ) ).

% not_one_le_zero
thf(fact_621_not__one__le__zero,axiom,
    ~ ( ord_le1926595141338095240atural @ one_one_Code_natural @ zero_z2226904508553997617atural ) ).

% not_one_le_zero
thf(fact_622_not__one__le__zero,axiom,
    ~ ( ord_less_eq_rat @ one_one_rat @ zero_zero_rat ) ).

% not_one_le_zero
thf(fact_623_not__one__le__zero,axiom,
    ~ ( ord_less_eq_nat @ one_one_nat @ zero_zero_nat ) ).

% not_one_le_zero
thf(fact_624_not__one__le__zero,axiom,
    ~ ( ord_less_eq_int @ one_one_int @ zero_zero_int ) ).

% not_one_le_zero
thf(fact_625_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ one_one_Code_integer ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_626_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ one_one_Code_natural ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_627_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_less_eq_rat @ zero_zero_rat @ one_one_rat ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_628_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_less_eq_nat @ zero_zero_nat @ one_one_nat ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_629_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_less_eq_int @ zero_zero_int @ one_one_int ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_630_zero__less__one__class_Ozero__le__one,axiom,
    ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ one_one_Code_integer ).

% zero_less_one_class.zero_le_one
thf(fact_631_zero__less__one__class_Ozero__le__one,axiom,
    ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ one_one_Code_natural ).

% zero_less_one_class.zero_le_one
thf(fact_632_zero__less__one__class_Ozero__le__one,axiom,
    ord_less_eq_rat @ zero_zero_rat @ one_one_rat ).

% zero_less_one_class.zero_le_one
thf(fact_633_zero__less__one__class_Ozero__le__one,axiom,
    ord_less_eq_nat @ zero_zero_nat @ one_one_nat ).

% zero_less_one_class.zero_le_one
thf(fact_634_zero__less__one__class_Ozero__le__one,axiom,
    ord_less_eq_int @ zero_zero_int @ one_one_int ).

% zero_less_one_class.zero_le_one
thf(fact_635_zero__neq__one,axiom,
    zero_zero_nat != one_one_nat ).

% zero_neq_one
thf(fact_636_zero__neq__one,axiom,
    zero_zero_int != one_one_int ).

% zero_neq_one
thf(fact_637_zero__neq__one,axiom,
    zero_z3403309356797280102nteger != one_one_Code_integer ).

% zero_neq_one
thf(fact_638_zero__neq__one,axiom,
    zero_zero_rat != one_one_rat ).

% zero_neq_one
thf(fact_639_zero__neq__one,axiom,
    zero_z2226904508553997617atural != one_one_Code_natural ).

% zero_neq_one
thf(fact_640_return__bind,axiom,
    ! [X2: product_unit,F: product_unit > heap_Time_Heap_a] :
      ( ( heap_T757603679106148408unit_a @ ( heap_T7507251653302230130t_unit @ X2 ) @ F )
      = ( heap_T757603679106148408unit_a @ ( heap_Time_wait @ one_one_nat )
        @ ^ [Uu: product_unit] : ( F @ X2 ) ) ) ).

% return_bind
thf(fact_641_return__bind,axiom,
    ! [X2: product_unit,F: product_unit > heap_T5738788834812785303t_unit] :
      ( ( heap_T2633723481742716231t_unit @ ( heap_T7507251653302230130t_unit @ X2 ) @ F )
      = ( heap_T2633723481742716231t_unit @ ( heap_Time_wait @ one_one_nat )
        @ ^ [Uu: product_unit] : ( F @ X2 ) ) ) ).

% return_bind
thf(fact_642_return__bind,axiom,
    ! [X2: a,F: a > heap_Time_Heap_a] :
      ( ( heap_Time_bind_a_a @ ( heap_Time_return_a @ X2 ) @ F )
      = ( heap_T757603679106148408unit_a @ ( heap_Time_wait @ one_one_nat )
        @ ^ [Uu: product_unit] : ( F @ X2 ) ) ) ).

% return_bind
thf(fact_643_bind__return,axiom,
    ! [F: heap_T5738788834812785303t_unit] :
      ( ( heap_T2633723481742716231t_unit @ F @ heap_T7507251653302230130t_unit )
      = ( heap_T2633723481742716231t_unit @ ( heap_Time_wait @ one_one_nat )
        @ ^ [Uu: product_unit] : F ) ) ).

% bind_return
thf(fact_644_bind__return,axiom,
    ! [F: heap_Time_Heap_a] :
      ( ( heap_Time_bind_a_a @ F @ heap_Time_return_a )
      = ( heap_T757603679106148408unit_a @ ( heap_Time_wait @ one_one_nat )
        @ ^ [Uu: product_unit] : F ) ) ).

% bind_return
thf(fact_645_time__array__nth,axiom,
    ! [P3: array_Product_unit,I: nat,H: heap_e7401611519738050253t_unit] :
      ( ( ( time_f8834461667527620124t_unit @ ( array_7872002506669749220t_unit @ P3 @ I ) @ H )
       => ( ( time_t4224138285095624986t_unit @ ( array_7872002506669749220t_unit @ P3 @ I ) @ H )
          = zero_zero_nat ) )
      & ( ~ ( time_f8834461667527620124t_unit @ ( array_7872002506669749220t_unit @ P3 @ I ) @ H )
       => ( ( time_t4224138285095624986t_unit @ ( array_7872002506669749220t_unit @ P3 @ I ) @ H )
          = one_one_nat ) ) ) ).

% time_array_nth
thf(fact_646_dbl__inc__simps_I2_J,axiom,
    ( ( neg_nu5851722552734809277nc_int @ zero_zero_int )
    = one_one_int ) ).

% dbl_inc_simps(2)
thf(fact_647_dbl__inc__simps_I2_J,axiom,
    ( ( neg_nu5831290666863070958nteger @ zero_z3403309356797280102nteger )
    = one_one_Code_integer ) ).

% dbl_inc_simps(2)
thf(fact_648_dbl__inc__simps_I2_J,axiom,
    ( ( neg_nu5219082963157363817nc_rat @ zero_zero_rat )
    = one_one_rat ) ).

% dbl_inc_simps(2)
thf(fact_649_one__natural_Orsp,axiom,
    one_one_nat = one_one_nat ).

% one_natural.rsp
thf(fact_650_one__integer_Orsp,axiom,
    one_one_int = one_one_int ).

% one_integer.rsp
thf(fact_651_time__return,axiom,
    ! [X2: a,H: heap_e7401611519738050253t_unit] :
      ( ( time_time_a @ ( heap_Time_return_a @ X2 ) @ H )
      = one_one_nat ) ).

% time_return
thf(fact_652_time__return,axiom,
    ! [X2: product_unit,H: heap_e7401611519738050253t_unit] :
      ( ( time_t4224138285095624986t_unit @ ( heap_T7507251653302230130t_unit @ X2 ) @ H )
      = one_one_nat ) ).

% time_return
thf(fact_653_fails__return,axiom,
    ! [X2: product_unit,H: heap_e7401611519738050253t_unit] :
      ~ ( time_f8834461667527620124t_unit @ ( heap_T7507251653302230130t_unit @ X2 ) @ H ) ).

% fails_return
thf(fact_654_dbl__inc__def,axiom,
    ( neg_nu5831290666863070958nteger
    = ( ^ [X: code_integer] : ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ X @ X ) @ one_one_Code_integer ) ) ) ).

% dbl_inc_def
thf(fact_655_dbl__inc__def,axiom,
    ( neg_nu5219082963157363817nc_rat
    = ( ^ [X: rat] : ( plus_plus_rat @ ( plus_plus_rat @ X @ X ) @ one_one_rat ) ) ) ).

% dbl_inc_def
thf(fact_656_dbl__inc__def,axiom,
    ( neg_nu5851722552734809277nc_int
    = ( ^ [X: int] : ( plus_plus_int @ ( plus_plus_int @ X @ X ) @ one_one_int ) ) ) ).

% dbl_inc_def
thf(fact_657_bind__lift,axiom,
    ! [F: heap_T5738788834812785303t_unit,G: product_unit > a] :
      ( ( heap_T757603679106148408unit_a @ F @ ( heap_T6901581777565460678unit_a @ G ) )
      = ( heap_T757603679106148408unit_a @ F
        @ ^ [X: product_unit] : ( heap_Time_return_a @ ( G @ X ) ) ) ) ).

% bind_lift
thf(fact_658_bind__lift,axiom,
    ! [F: heap_T5738788834812785303t_unit,G: product_unit > product_unit] :
      ( ( heap_T2633723481742716231t_unit @ F @ ( heap_T7011250591035762645t_unit @ G ) )
      = ( heap_T2633723481742716231t_unit @ F
        @ ^ [X: product_unit] : ( heap_T7507251653302230130t_unit @ ( G @ X ) ) ) ) ).

% bind_lift
thf(fact_659_bind__lift,axiom,
    ! [F: heap_Time_Heap_a,G: a > a] :
      ( ( heap_Time_bind_a_a @ F @ ( heap_Time_lift_a_a @ G ) )
      = ( heap_Time_bind_a_a @ F
        @ ^ [X: a] : ( heap_Time_return_a @ ( G @ X ) ) ) ) ).

% bind_lift
thf(fact_660_lookup__chain,axiom,
    ! [R: ref_Product_unit,F: heap_Time_Heap_a] :
      ( ( heap_T757603679106148408unit_a @ ( ref_lo7930775386976318366t_unit @ R )
        @ ^ [Uu: product_unit] : F )
      = ( heap_T757603679106148408unit_a @ ( heap_Time_wait @ one_one_nat )
        @ ^ [Uu: product_unit] : F ) ) ).

% lookup_chain
thf(fact_661_lookup__chain,axiom,
    ! [R: ref_Product_unit,F: heap_T5738788834812785303t_unit] :
      ( ( heap_T2633723481742716231t_unit @ ( ref_lo7930775386976318366t_unit @ R )
        @ ^ [Uu: product_unit] : F )
      = ( heap_T2633723481742716231t_unit @ ( heap_Time_wait @ one_one_nat )
        @ ^ [Uu: product_unit] : F ) ) ).

% lookup_chain
thf(fact_662_ceiling__add__one,axiom,
    ! [X2: rat] :
      ( ( archim2889992004027027881ng_rat @ ( plus_plus_rat @ X2 @ one_one_rat ) )
      = ( plus_plus_int @ ( archim2889992004027027881ng_rat @ X2 ) @ one_one_int ) ) ).

% ceiling_add_one
thf(fact_663_ceiling__le__one,axiom,
    ! [X2: rat] :
      ( ( ord_less_eq_int @ ( archim2889992004027027881ng_rat @ X2 ) @ one_one_int )
      = ( ord_less_eq_rat @ X2 @ one_one_rat ) ) ).

% ceiling_le_one
thf(fact_664_ceiling__le__zero,axiom,
    ! [X2: rat] :
      ( ( ord_less_eq_int @ ( archim2889992004027027881ng_rat @ X2 ) @ zero_zero_int )
      = ( ord_less_eq_rat @ X2 @ zero_zero_rat ) ) ).

% ceiling_le_zero
thf(fact_665_of__int__le__1__iff,axiom,
    ! [Z2: int] :
      ( ( ord_le3102999989581377725nteger @ ( ring_18347121197199848620nteger @ Z2 ) @ one_one_Code_integer )
      = ( ord_less_eq_int @ Z2 @ one_one_int ) ) ).

% of_int_le_1_iff
thf(fact_666_of__int__le__1__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ Z2 ) @ one_one_rat )
      = ( ord_less_eq_int @ Z2 @ one_one_int ) ) ).

% of_int_le_1_iff
thf(fact_667_of__int__le__1__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ ( ring_1_of_int_int @ Z2 ) @ one_one_int )
      = ( ord_less_eq_int @ Z2 @ one_one_int ) ) ).

% of_int_le_1_iff
thf(fact_668_of__int__1__le__iff,axiom,
    ! [Z2: int] :
      ( ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( ring_18347121197199848620nteger @ Z2 ) )
      = ( ord_less_eq_int @ one_one_int @ Z2 ) ) ).

% of_int_1_le_iff
thf(fact_669_of__int__1__le__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_rat @ one_one_rat @ ( ring_1_of_int_rat @ Z2 ) )
      = ( ord_less_eq_int @ one_one_int @ Z2 ) ) ).

% of_int_1_le_iff
thf(fact_670_of__int__1__le__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ one_one_int @ ( ring_1_of_int_int @ Z2 ) )
      = ( ord_less_eq_int @ one_one_int @ Z2 ) ) ).

% of_int_1_le_iff
thf(fact_671_of__int__eq__iff,axiom,
    ! [W2: int,Z2: int] :
      ( ( ( ring_18347121197199848620nteger @ W2 )
        = ( ring_18347121197199848620nteger @ Z2 ) )
      = ( W2 = Z2 ) ) ).

% of_int_eq_iff
thf(fact_672_of__int__eq__iff,axiom,
    ! [W2: int,Z2: int] :
      ( ( ( ring_1_of_int_rat @ W2 )
        = ( ring_1_of_int_rat @ Z2 ) )
      = ( W2 = Z2 ) ) ).

% of_int_eq_iff
thf(fact_673_of__int__eq__iff,axiom,
    ! [W2: int,Z2: int] :
      ( ( ( ring_1_of_int_int @ W2 )
        = ( ring_1_of_int_int @ Z2 ) )
      = ( W2 = Z2 ) ) ).

% of_int_eq_iff
thf(fact_674_ceiling__of__int,axiom,
    ! [Z2: int] :
      ( ( archim2889992004027027881ng_rat @ ( ring_1_of_int_rat @ Z2 ) )
      = Z2 ) ).

% ceiling_of_int
thf(fact_675_of__int__0,axiom,
    ( ( ring_18347121197199848620nteger @ zero_zero_int )
    = zero_z3403309356797280102nteger ) ).

% of_int_0
thf(fact_676_of__int__0,axiom,
    ( ( ring_1_of_int_rat @ zero_zero_int )
    = zero_zero_rat ) ).

% of_int_0
thf(fact_677_of__int__0,axiom,
    ( ( ring_1_of_int_int @ zero_zero_int )
    = zero_zero_int ) ).

% of_int_0
thf(fact_678_of__int__0__eq__iff,axiom,
    ! [Z2: int] :
      ( ( zero_z3403309356797280102nteger
        = ( ring_18347121197199848620nteger @ Z2 ) )
      = ( Z2 = zero_zero_int ) ) ).

% of_int_0_eq_iff
thf(fact_679_of__int__0__eq__iff,axiom,
    ! [Z2: int] :
      ( ( zero_zero_rat
        = ( ring_1_of_int_rat @ Z2 ) )
      = ( Z2 = zero_zero_int ) ) ).

% of_int_0_eq_iff
thf(fact_680_of__int__0__eq__iff,axiom,
    ! [Z2: int] :
      ( ( zero_zero_int
        = ( ring_1_of_int_int @ Z2 ) )
      = ( Z2 = zero_zero_int ) ) ).

% of_int_0_eq_iff
thf(fact_681_of__int__eq__0__iff,axiom,
    ! [Z2: int] :
      ( ( ( ring_18347121197199848620nteger @ Z2 )
        = zero_z3403309356797280102nteger )
      = ( Z2 = zero_zero_int ) ) ).

% of_int_eq_0_iff
thf(fact_682_of__int__eq__0__iff,axiom,
    ! [Z2: int] :
      ( ( ( ring_1_of_int_rat @ Z2 )
        = zero_zero_rat )
      = ( Z2 = zero_zero_int ) ) ).

% of_int_eq_0_iff
thf(fact_683_of__int__eq__0__iff,axiom,
    ! [Z2: int] :
      ( ( ( ring_1_of_int_int @ Z2 )
        = zero_zero_int )
      = ( Z2 = zero_zero_int ) ) ).

% of_int_eq_0_iff
thf(fact_684_of__int__le__iff,axiom,
    ! [W2: int,Z2: int] :
      ( ( ord_le3102999989581377725nteger @ ( ring_18347121197199848620nteger @ W2 ) @ ( ring_18347121197199848620nteger @ Z2 ) )
      = ( ord_less_eq_int @ W2 @ Z2 ) ) ).

% of_int_le_iff
thf(fact_685_of__int__le__iff,axiom,
    ! [W2: int,Z2: int] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ W2 ) @ ( ring_1_of_int_rat @ Z2 ) )
      = ( ord_less_eq_int @ W2 @ Z2 ) ) ).

% of_int_le_iff
thf(fact_686_of__int__le__iff,axiom,
    ! [W2: int,Z2: int] :
      ( ( ord_less_eq_int @ ( ring_1_of_int_int @ W2 ) @ ( ring_1_of_int_int @ Z2 ) )
      = ( ord_less_eq_int @ W2 @ Z2 ) ) ).

% of_int_le_iff
thf(fact_687_of__int__eq__1__iff,axiom,
    ! [Z2: int] :
      ( ( ( ring_18347121197199848620nteger @ Z2 )
        = one_one_Code_integer )
      = ( Z2 = one_one_int ) ) ).

% of_int_eq_1_iff
thf(fact_688_of__int__eq__1__iff,axiom,
    ! [Z2: int] :
      ( ( ( ring_1_of_int_rat @ Z2 )
        = one_one_rat )
      = ( Z2 = one_one_int ) ) ).

% of_int_eq_1_iff
thf(fact_689_of__int__eq__1__iff,axiom,
    ! [Z2: int] :
      ( ( ( ring_1_of_int_int @ Z2 )
        = one_one_int )
      = ( Z2 = one_one_int ) ) ).

% of_int_eq_1_iff
thf(fact_690_of__int__1,axiom,
    ( ( ring_18347121197199848620nteger @ one_one_int )
    = one_one_Code_integer ) ).

% of_int_1
thf(fact_691_of__int__1,axiom,
    ( ( ring_1_of_int_rat @ one_one_int )
    = one_one_rat ) ).

% of_int_1
thf(fact_692_of__int__1,axiom,
    ( ( ring_1_of_int_int @ one_one_int )
    = one_one_int ) ).

% of_int_1
thf(fact_693_of__int__add,axiom,
    ! [W2: int,Z2: int] :
      ( ( ring_18347121197199848620nteger @ ( plus_plus_int @ W2 @ Z2 ) )
      = ( plus_p5714425477246183910nteger @ ( ring_18347121197199848620nteger @ W2 ) @ ( ring_18347121197199848620nteger @ Z2 ) ) ) ).

% of_int_add
thf(fact_694_of__int__add,axiom,
    ! [W2: int,Z2: int] :
      ( ( ring_1_of_int_rat @ ( plus_plus_int @ W2 @ Z2 ) )
      = ( plus_plus_rat @ ( ring_1_of_int_rat @ W2 ) @ ( ring_1_of_int_rat @ Z2 ) ) ) ).

% of_int_add
thf(fact_695_of__int__add,axiom,
    ! [W2: int,Z2: int] :
      ( ( ring_1_of_int_int @ ( plus_plus_int @ W2 @ Z2 ) )
      = ( plus_plus_int @ ( ring_1_of_int_int @ W2 ) @ ( ring_1_of_int_int @ Z2 ) ) ) ).

% of_int_add
thf(fact_696_ceiling__zero,axiom,
    ( ( archim2889992004027027881ng_rat @ zero_zero_rat )
    = zero_zero_int ) ).

% ceiling_zero
thf(fact_697_of__int__of__nat__eq,axiom,
    ! [N: nat] :
      ( ( ring_1_of_int_int @ ( semiri1314217659103216013at_int @ N ) )
      = ( semiri1314217659103216013at_int @ N ) ) ).

% of_int_of_nat_eq
thf(fact_698_of__int__of__nat__eq,axiom,
    ! [N: nat] :
      ( ( ring_18347121197199848620nteger @ ( semiri1314217659103216013at_int @ N ) )
      = ( semiri4939895301339042750nteger @ N ) ) ).

% of_int_of_nat_eq
thf(fact_699_of__int__of__nat__eq,axiom,
    ! [N: nat] :
      ( ( ring_1_of_int_rat @ ( semiri1314217659103216013at_int @ N ) )
      = ( semiri681578069525770553at_rat @ N ) ) ).

% of_int_of_nat_eq
thf(fact_700_ceiling__one,axiom,
    ( ( archim2889992004027027881ng_rat @ one_one_rat )
    = one_one_int ) ).

% ceiling_one
thf(fact_701_ceiling__of__nat,axiom,
    ! [N: nat] :
      ( ( archim2889992004027027881ng_rat @ ( semiri681578069525770553at_rat @ N ) )
      = ( semiri1314217659103216013at_int @ N ) ) ).

% ceiling_of_nat
thf(fact_702_ceiling__add__of__int,axiom,
    ! [X2: rat,Z2: int] :
      ( ( archim2889992004027027881ng_rat @ ( plus_plus_rat @ X2 @ ( ring_1_of_int_rat @ Z2 ) ) )
      = ( plus_plus_int @ ( archim2889992004027027881ng_rat @ X2 ) @ Z2 ) ) ).

% ceiling_add_of_int
thf(fact_703_of__int__le__0__iff,axiom,
    ! [Z2: int] :
      ( ( ord_le3102999989581377725nteger @ ( ring_18347121197199848620nteger @ Z2 ) @ zero_z3403309356797280102nteger )
      = ( ord_less_eq_int @ Z2 @ zero_zero_int ) ) ).

% of_int_le_0_iff
thf(fact_704_of__int__le__0__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ Z2 ) @ zero_zero_rat )
      = ( ord_less_eq_int @ Z2 @ zero_zero_int ) ) ).

% of_int_le_0_iff
thf(fact_705_of__int__le__0__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ ( ring_1_of_int_int @ Z2 ) @ zero_zero_int )
      = ( ord_less_eq_int @ Z2 @ zero_zero_int ) ) ).

% of_int_le_0_iff
thf(fact_706_of__int__0__le__iff,axiom,
    ! [Z2: int] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( ring_18347121197199848620nteger @ Z2 ) )
      = ( ord_less_eq_int @ zero_zero_int @ Z2 ) ) ).

% of_int_0_le_iff
thf(fact_707_of__int__0__le__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( ring_1_of_int_rat @ Z2 ) )
      = ( ord_less_eq_int @ zero_zero_int @ Z2 ) ) ).

% of_int_0_le_iff
thf(fact_708_of__int__0__le__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( ring_1_of_int_int @ Z2 ) )
      = ( ord_less_eq_int @ zero_zero_int @ Z2 ) ) ).

% of_int_0_le_iff
thf(fact_709_le__of__int__ceiling,axiom,
    ! [X2: rat] : ( ord_less_eq_rat @ X2 @ ( ring_1_of_int_rat @ ( archim2889992004027027881ng_rat @ X2 ) ) ) ).

% le_of_int_ceiling
thf(fact_710_ceiling__le__iff,axiom,
    ! [X2: rat,Z2: int] :
      ( ( ord_less_eq_int @ ( archim2889992004027027881ng_rat @ X2 ) @ Z2 )
      = ( ord_less_eq_rat @ X2 @ ( ring_1_of_int_rat @ Z2 ) ) ) ).

% ceiling_le_iff
thf(fact_711_ex__le__of__int,axiom,
    ! [X2: rat] :
    ? [Z4: int] : ( ord_less_eq_rat @ X2 @ ( ring_1_of_int_rat @ Z4 ) ) ).

% ex_le_of_int
thf(fact_712_ceiling__mono,axiom,
    ! [Y: rat,X2: rat] :
      ( ( ord_less_eq_rat @ Y @ X2 )
     => ( ord_less_eq_int @ ( archim2889992004027027881ng_rat @ Y ) @ ( archim2889992004027027881ng_rat @ X2 ) ) ) ).

% ceiling_mono
thf(fact_713_ceiling__add__le,axiom,
    ! [X2: rat,Y: rat] : ( ord_less_eq_int @ ( archim2889992004027027881ng_rat @ ( plus_plus_rat @ X2 @ Y ) ) @ ( plus_plus_int @ ( archim2889992004027027881ng_rat @ X2 ) @ ( archim2889992004027027881ng_rat @ Y ) ) ) ).

% ceiling_add_le
thf(fact_714_of__int__nonneg,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
     => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( ring_18347121197199848620nteger @ Z2 ) ) ) ).

% of_int_nonneg
thf(fact_715_of__int__nonneg,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
     => ( ord_less_eq_rat @ zero_zero_rat @ ( ring_1_of_int_rat @ Z2 ) ) ) ).

% of_int_nonneg
thf(fact_716_of__int__nonneg,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
     => ( ord_less_eq_int @ zero_zero_int @ ( ring_1_of_int_int @ Z2 ) ) ) ).

% of_int_nonneg
thf(fact_717_change__def,axiom,
    ( ref_ch7259622376331601608t_unit
    = ( ^ [F3: product_unit > product_unit,R2: ref_Product_unit] :
          ( heap_T2633723481742716231t_unit @ ( ref_lo7930775386976318366t_unit @ R2 )
          @ ^ [X: product_unit] :
              ( heap_T2633723481742716231t_unit @ ( ref_up627237114476368303t_unit @ R2 @ ( F3 @ X ) )
              @ ^ [Uu: product_unit] : ( heap_T7507251653302230130t_unit @ ( F3 @ X ) ) ) ) ) ) ).

% change_def
thf(fact_718_one__le__ceiling,axiom,
    ! [X2: rat] :
      ( ( ord_less_eq_int @ one_one_int @ ( archim2889992004027027881ng_rat @ X2 ) )
      = ( ord_less_rat @ zero_zero_rat @ X2 ) ) ).

% one_le_ceiling
thf(fact_719_ceiling__less__one,axiom,
    ! [X2: rat] :
      ( ( ord_less_int @ ( archim2889992004027027881ng_rat @ X2 ) @ one_one_int )
      = ( ord_less_eq_rat @ X2 @ zero_zero_rat ) ) ).

% ceiling_less_one
thf(fact_720_of__nat__nat,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
     => ( ( semiri1314217659103216013at_int @ ( nat2 @ Z2 ) )
        = ( ring_1_of_int_int @ Z2 ) ) ) ).

% of_nat_nat
thf(fact_721_of__nat__nat,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
     => ( ( semiri4939895301339042750nteger @ ( nat2 @ Z2 ) )
        = ( ring_18347121197199848620nteger @ Z2 ) ) ) ).

% of_nat_nat
thf(fact_722_of__nat__nat,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
     => ( ( semiri681578069525770553at_rat @ ( nat2 @ Z2 ) )
        = ( ring_1_of_int_rat @ Z2 ) ) ) ).

% of_nat_nat
thf(fact_723_one__le__floor,axiom,
    ! [X2: rat] :
      ( ( ord_less_eq_int @ one_one_int @ ( archim3151403230148437115or_rat @ X2 ) )
      = ( ord_less_eq_rat @ one_one_rat @ X2 ) ) ).

% one_le_floor
thf(fact_724_power__int__decreasing,axiom,
    ! [N: int,N4: int,A: rat] :
      ( ( ord_less_eq_int @ N @ N4 )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ( ord_less_eq_rat @ A @ one_one_rat )
         => ( ( ( A != zero_zero_rat )
              | ( N4 != zero_zero_int )
              | ( N = zero_zero_int ) )
           => ( ord_less_eq_rat @ ( power_int_rat @ A @ N4 ) @ ( power_int_rat @ A @ N ) ) ) ) ) ) ).

% power_int_decreasing
thf(fact_725_power__int__le__one,axiom,
    ! [X2: rat,N: int] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X2 )
     => ( ( ord_less_eq_int @ zero_zero_int @ N )
       => ( ( ord_less_eq_rat @ X2 @ one_one_rat )
         => ( ord_less_eq_rat @ ( power_int_rat @ X2 @ N ) @ one_one_rat ) ) ) ) ).

% power_int_le_one
thf(fact_726_zero__le__floor,axiom,
    ! [X2: rat] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( archim3151403230148437115or_rat @ X2 ) )
      = ( ord_less_eq_rat @ zero_zero_rat @ X2 ) ) ).

% zero_le_floor
thf(fact_727_rotate1__length01,axiom,
    ! [Xs: list_nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat )
     => ( ( rotate1_nat @ Xs )
        = Xs ) ) ).

% rotate1_length01
thf(fact_728_rotate1__length01,axiom,
    ! [Xs: list_int] :
      ( ( ord_less_eq_nat @ ( size_size_list_int @ Xs ) @ one_one_nat )
     => ( ( rotate1_int @ Xs )
        = Xs ) ) ).

% rotate1_length01
thf(fact_729_rotate1__length01,axiom,
    ! [Xs: list_o] :
      ( ( ord_less_eq_nat @ ( size_size_list_o @ Xs ) @ one_one_nat )
     => ( ( rotate1_o @ Xs )
        = Xs ) ) ).

% rotate1_length01
thf(fact_730_le__imp__0__less,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
     => ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ one_one_int @ Z2 ) ) ) ).

% le_imp_0_less
thf(fact_731_bot__nat__0_Onot__eq__extremum,axiom,
    ! [A: nat] :
      ( ( A != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ A ) ) ).

% bot_nat_0.not_eq_extremum
thf(fact_732_neq0__conv,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% neq0_conv
thf(fact_733_less__nat__zero__code,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% less_nat_zero_code
thf(fact_734_nat__add__left__cancel__less,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% nat_add_left_cancel_less
thf(fact_735_not__gr__zero,axiom,
    ! [N: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
      = ( N = zero_zero_nat ) ) ).

% not_gr_zero
thf(fact_736_add__less__cancel__left,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ C @ A ) @ ( plus_p5714425477246183910nteger @ C @ B ) )
      = ( ord_le6747313008572928689nteger @ A @ B ) ) ).

% add_less_cancel_left
thf(fact_737_add__less__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ C @ A ) @ ( plus_plus_rat @ C @ B ) )
      = ( ord_less_rat @ A @ B ) ) ).

% add_less_cancel_left
thf(fact_738_add__less__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( ord_less_nat @ A @ B ) ) ).

% add_less_cancel_left
thf(fact_739_add__less__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
      = ( ord_less_int @ A @ B ) ) ).

% add_less_cancel_left
thf(fact_740_add__less__cancel__right,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ ( plus_p5714425477246183910nteger @ B @ C ) )
      = ( ord_le6747313008572928689nteger @ A @ B ) ) ).

% add_less_cancel_right
thf(fact_741_add__less__cancel__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ C ) )
      = ( ord_less_rat @ A @ B ) ) ).

% add_less_cancel_right
thf(fact_742_add__less__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( ord_less_nat @ A @ B ) ) ).

% add_less_cancel_right
thf(fact_743_add__less__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
      = ( ord_less_int @ A @ B ) ) ).

% add_less_cancel_right
thf(fact_744_of__nat__less__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_iff
thf(fact_745_of__nat__less__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_iff
thf(fact_746_of__nat__less__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_le6747313008572928689nteger @ ( semiri4939895301339042750nteger @ M ) @ ( semiri4939895301339042750nteger @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_iff
thf(fact_747_of__nat__less__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_iff
thf(fact_748_of__nat__less__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_le5570908160329646204atural @ ( semiri3763490453095760265atural @ M ) @ ( semiri3763490453095760265atural @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_iff
thf(fact_749_add__gr__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ M @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M )
        | ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% add_gr_0
thf(fact_750_less__one,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ one_one_nat )
      = ( N = zero_zero_nat ) ) ).

% less_one
thf(fact_751_power__int__1__left,axiom,
    ! [N: int] :
      ( ( power_int_rat @ one_one_rat @ N )
      = one_one_rat ) ).

% power_int_1_left
thf(fact_752_nat__int,axiom,
    ! [N: nat] :
      ( ( nat2 @ ( semiri1314217659103216013at_int @ N ) )
      = N ) ).

% nat_int
thf(fact_753_floor__of__int,axiom,
    ! [Z2: int] :
      ( ( archim3151403230148437115or_rat @ ( ring_1_of_int_rat @ Z2 ) )
      = Z2 ) ).

% floor_of_int
thf(fact_754_length__rotate1,axiom,
    ! [Xs: list_nat] :
      ( ( size_size_list_nat @ ( rotate1_nat @ Xs ) )
      = ( size_size_list_nat @ Xs ) ) ).

% length_rotate1
thf(fact_755_length__rotate1,axiom,
    ! [Xs: list_int] :
      ( ( size_size_list_int @ ( rotate1_int @ Xs ) )
      = ( size_size_list_int @ Xs ) ) ).

% length_rotate1
thf(fact_756_length__rotate1,axiom,
    ! [Xs: list_o] :
      ( ( size_size_list_o @ ( rotate1_o @ Xs ) )
      = ( size_size_list_o @ Xs ) ) ).

% length_rotate1
thf(fact_757_add__less__same__cancel1,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( ord_le5570908160329646204atural @ ( plus_p4538020629002901425atural @ B @ A ) @ B )
      = ( ord_le5570908160329646204atural @ A @ zero_z2226904508553997617atural ) ) ).

% add_less_same_cancel1
thf(fact_758_add__less__same__cancel1,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ B @ A ) @ B )
      = ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% add_less_same_cancel1
thf(fact_759_add__less__same__cancel1,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ B @ A ) @ B )
      = ( ord_less_rat @ A @ zero_zero_rat ) ) ).

% add_less_same_cancel1
thf(fact_760_add__less__same__cancel1,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ B @ A ) @ B )
      = ( ord_less_nat @ A @ zero_zero_nat ) ) ).

% add_less_same_cancel1
thf(fact_761_add__less__same__cancel1,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ ( plus_plus_int @ B @ A ) @ B )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% add_less_same_cancel1
thf(fact_762_add__less__same__cancel2,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ ( plus_p4538020629002901425atural @ A @ B ) @ B )
      = ( ord_le5570908160329646204atural @ A @ zero_z2226904508553997617atural ) ) ).

% add_less_same_cancel2
thf(fact_763_add__less__same__cancel2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ B )
      = ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% add_less_same_cancel2
thf(fact_764_add__less__same__cancel2,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ A @ B ) @ B )
      = ( ord_less_rat @ A @ zero_zero_rat ) ) ).

% add_less_same_cancel2
thf(fact_765_add__less__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = ( ord_less_nat @ A @ zero_zero_nat ) ) ).

% add_less_same_cancel2
thf(fact_766_add__less__same__cancel2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ A @ B ) @ B )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% add_less_same_cancel2
thf(fact_767_less__add__same__cancel1,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ ( plus_p4538020629002901425atural @ A @ B ) )
      = ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B ) ) ).

% less_add_same_cancel1
thf(fact_768_less__add__same__cancel1,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ ( plus_p5714425477246183910nteger @ A @ B ) )
      = ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B ) ) ).

% less_add_same_cancel1
thf(fact_769_less__add__same__cancel1,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ ( plus_plus_rat @ A @ B ) )
      = ( ord_less_rat @ zero_zero_rat @ B ) ) ).

% less_add_same_cancel1
thf(fact_770_less__add__same__cancel1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = ( ord_less_nat @ zero_zero_nat @ B ) ) ).

% less_add_same_cancel1
thf(fact_771_less__add__same__cancel1,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ ( plus_plus_int @ A @ B ) )
      = ( ord_less_int @ zero_zero_int @ B ) ) ).

% less_add_same_cancel1
thf(fact_772_less__add__same__cancel2,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ ( plus_p4538020629002901425atural @ B @ A ) )
      = ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B ) ) ).

% less_add_same_cancel2
thf(fact_773_less__add__same__cancel2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ ( plus_p5714425477246183910nteger @ B @ A ) )
      = ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B ) ) ).

% less_add_same_cancel2
thf(fact_774_less__add__same__cancel2,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ ( plus_plus_rat @ B @ A ) )
      = ( ord_less_rat @ zero_zero_rat @ B ) ) ).

% less_add_same_cancel2
thf(fact_775_less__add__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ ( plus_plus_nat @ B @ A ) )
      = ( ord_less_nat @ zero_zero_nat @ B ) ) ).

% less_add_same_cancel2
thf(fact_776_less__add__same__cancel2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ ( plus_plus_int @ B @ A ) )
      = ( ord_less_int @ zero_zero_int @ B ) ) ).

% less_add_same_cancel2
thf(fact_777_double__add__less__zero__iff__single__add__less__zero,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ A ) @ zero_z3403309356797280102nteger )
      = ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% double_add_less_zero_iff_single_add_less_zero
thf(fact_778_double__add__less__zero__iff__single__add__less__zero,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ A @ A ) @ zero_zero_rat )
      = ( ord_less_rat @ A @ zero_zero_rat ) ) ).

% double_add_less_zero_iff_single_add_less_zero
thf(fact_779_double__add__less__zero__iff__single__add__less__zero,axiom,
    ! [A: int] :
      ( ( ord_less_int @ ( plus_plus_int @ A @ A ) @ zero_zero_int )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% double_add_less_zero_iff_single_add_less_zero
thf(fact_780_zero__less__double__add__iff__zero__less__single__add,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ A @ A ) )
      = ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% zero_less_double_add_iff_zero_less_single_add
thf(fact_781_zero__less__double__add__iff__zero__less__single__add,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( plus_plus_rat @ A @ A ) )
      = ( ord_less_rat @ zero_zero_rat @ A ) ) ).

% zero_less_double_add_iff_zero_less_single_add
thf(fact_782_zero__less__double__add__iff__zero__less__single__add,axiom,
    ! [A: int] :
      ( ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ A @ A ) )
      = ( ord_less_int @ zero_zero_int @ A ) ) ).

% zero_less_double_add_iff_zero_less_single_add
thf(fact_783_of__int__less__iff,axiom,
    ! [W2: int,Z2: int] :
      ( ( ord_le6747313008572928689nteger @ ( ring_18347121197199848620nteger @ W2 ) @ ( ring_18347121197199848620nteger @ Z2 ) )
      = ( ord_less_int @ W2 @ Z2 ) ) ).

% of_int_less_iff
thf(fact_784_of__int__less__iff,axiom,
    ! [W2: int,Z2: int] :
      ( ( ord_less_rat @ ( ring_1_of_int_rat @ W2 ) @ ( ring_1_of_int_rat @ Z2 ) )
      = ( ord_less_int @ W2 @ Z2 ) ) ).

% of_int_less_iff
thf(fact_785_of__int__less__iff,axiom,
    ! [W2: int,Z2: int] :
      ( ( ord_less_int @ ( ring_1_of_int_int @ W2 ) @ ( ring_1_of_int_int @ Z2 ) )
      = ( ord_less_int @ W2 @ Z2 ) ) ).

% of_int_less_iff
thf(fact_786_power__int__eq__0__iff,axiom,
    ! [X2: rat,N: int] :
      ( ( ( power_int_rat @ X2 @ N )
        = zero_zero_rat )
      = ( ( X2 = zero_zero_rat )
        & ( N != zero_zero_int ) ) ) ).

% power_int_eq_0_iff
thf(fact_787_power__int__0__left,axiom,
    ! [M: int] :
      ( ( M != zero_zero_int )
     => ( ( power_int_rat @ zero_zero_rat @ M )
        = zero_zero_rat ) ) ).

% power_int_0_left
thf(fact_788_floor__zero,axiom,
    ( ( archim3151403230148437115or_rat @ zero_zero_rat )
    = zero_zero_int ) ).

% floor_zero
thf(fact_789_power__int__0__right,axiom,
    ! [X2: rat] :
      ( ( power_int_rat @ X2 @ zero_zero_int )
      = one_one_rat ) ).

% power_int_0_right
thf(fact_790_zless__nat__conj,axiom,
    ! [W2: int,Z2: int] :
      ( ( ord_less_nat @ ( nat2 @ W2 ) @ ( nat2 @ Z2 ) )
      = ( ( ord_less_int @ zero_zero_int @ Z2 )
        & ( ord_less_int @ W2 @ Z2 ) ) ) ).

% zless_nat_conj
thf(fact_791_floor__one,axiom,
    ( ( archim3151403230148437115or_rat @ one_one_rat )
    = one_one_int ) ).

% floor_one
thf(fact_792_floor__of__nat,axiom,
    ! [N: nat] :
      ( ( archim3151403230148437115or_rat @ ( semiri681578069525770553at_rat @ N ) )
      = ( semiri1314217659103216013at_int @ N ) ) ).

% floor_of_nat
thf(fact_793_of__nat__0__less__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_int @ zero_zero_int @ ( semiri1314217659103216013at_int @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% of_nat_0_less_iff
thf(fact_794_of__nat__0__less__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( semiri1316708129612266289at_nat @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% of_nat_0_less_iff
thf(fact_795_of__nat__0__less__iff,axiom,
    ! [N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( semiri4939895301339042750nteger @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% of_nat_0_less_iff
thf(fact_796_of__nat__0__less__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( semiri681578069525770553at_rat @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% of_nat_0_less_iff
thf(fact_797_of__nat__0__less__iff,axiom,
    ! [N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( semiri3763490453095760265atural @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% of_nat_0_less_iff
thf(fact_798_nat__0__iff,axiom,
    ! [I: int] :
      ( ( ( nat2 @ I )
        = zero_zero_nat )
      = ( ord_less_eq_int @ I @ zero_zero_int ) ) ).

% nat_0_iff
thf(fact_799_nat__le__0,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ Z2 @ zero_zero_int )
     => ( ( nat2 @ Z2 )
        = zero_zero_nat ) ) ).

% nat_le_0
thf(fact_800_zero__less__nat__eq,axiom,
    ! [Z2: int] :
      ( ( ord_less_nat @ zero_zero_nat @ ( nat2 @ Z2 ) )
      = ( ord_less_int @ zero_zero_int @ Z2 ) ) ).

% zero_less_nat_eq
thf(fact_801_zle__add1__eq__le,axiom,
    ! [W2: int,Z2: int] :
      ( ( ord_less_int @ W2 @ ( plus_plus_int @ Z2 @ one_one_int ) )
      = ( ord_less_eq_int @ W2 @ Z2 ) ) ).

% zle_add1_eq_le
thf(fact_802_int__nat__eq,axiom,
    ! [Z2: int] :
      ( ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
       => ( ( semiri1314217659103216013at_int @ ( nat2 @ Z2 ) )
          = Z2 ) )
      & ( ~ ( ord_less_eq_int @ zero_zero_int @ Z2 )
       => ( ( semiri1314217659103216013at_int @ ( nat2 @ Z2 ) )
          = zero_zero_int ) ) ) ).

% int_nat_eq
thf(fact_803_of__int__less__0__iff,axiom,
    ! [Z2: int] :
      ( ( ord_le6747313008572928689nteger @ ( ring_18347121197199848620nteger @ Z2 ) @ zero_z3403309356797280102nteger )
      = ( ord_less_int @ Z2 @ zero_zero_int ) ) ).

% of_int_less_0_iff
thf(fact_804_of__int__less__0__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_rat @ ( ring_1_of_int_rat @ Z2 ) @ zero_zero_rat )
      = ( ord_less_int @ Z2 @ zero_zero_int ) ) ).

% of_int_less_0_iff
thf(fact_805_of__int__less__0__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_int @ ( ring_1_of_int_int @ Z2 ) @ zero_zero_int )
      = ( ord_less_int @ Z2 @ zero_zero_int ) ) ).

% of_int_less_0_iff
thf(fact_806_of__int__0__less__iff,axiom,
    ! [Z2: int] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( ring_18347121197199848620nteger @ Z2 ) )
      = ( ord_less_int @ zero_zero_int @ Z2 ) ) ).

% of_int_0_less_iff
thf(fact_807_of__int__0__less__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_rat @ zero_zero_rat @ ( ring_1_of_int_rat @ Z2 ) )
      = ( ord_less_int @ zero_zero_int @ Z2 ) ) ).

% of_int_0_less_iff
thf(fact_808_of__int__0__less__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_int @ zero_zero_int @ ( ring_1_of_int_int @ Z2 ) )
      = ( ord_less_int @ zero_zero_int @ Z2 ) ) ).

% of_int_0_less_iff
thf(fact_809_power__int__mono__iff,axiom,
    ! [A: rat,B: rat,N: int] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ( ord_less_int @ zero_zero_int @ N )
         => ( ( ord_less_eq_rat @ ( power_int_rat @ A @ N ) @ ( power_int_rat @ B @ N ) )
            = ( ord_less_eq_rat @ A @ B ) ) ) ) ) ).

% power_int_mono_iff
thf(fact_810_of__int__less__1__iff,axiom,
    ! [Z2: int] :
      ( ( ord_le6747313008572928689nteger @ ( ring_18347121197199848620nteger @ Z2 ) @ one_one_Code_integer )
      = ( ord_less_int @ Z2 @ one_one_int ) ) ).

% of_int_less_1_iff
thf(fact_811_of__int__less__1__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_rat @ ( ring_1_of_int_rat @ Z2 ) @ one_one_rat )
      = ( ord_less_int @ Z2 @ one_one_int ) ) ).

% of_int_less_1_iff
thf(fact_812_of__int__less__1__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_int @ ( ring_1_of_int_int @ Z2 ) @ one_one_int )
      = ( ord_less_int @ Z2 @ one_one_int ) ) ).

% of_int_less_1_iff
thf(fact_813_of__int__1__less__iff,axiom,
    ! [Z2: int] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( ring_18347121197199848620nteger @ Z2 ) )
      = ( ord_less_int @ one_one_int @ Z2 ) ) ).

% of_int_1_less_iff
thf(fact_814_of__int__1__less__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_rat @ one_one_rat @ ( ring_1_of_int_rat @ Z2 ) )
      = ( ord_less_int @ one_one_int @ Z2 ) ) ).

% of_int_1_less_iff
thf(fact_815_of__int__1__less__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_int @ one_one_int @ ( ring_1_of_int_int @ Z2 ) )
      = ( ord_less_int @ one_one_int @ Z2 ) ) ).

% of_int_1_less_iff
thf(fact_816_floor__less__zero,axiom,
    ! [X2: rat] :
      ( ( ord_less_int @ ( archim3151403230148437115or_rat @ X2 ) @ zero_zero_int )
      = ( ord_less_rat @ X2 @ zero_zero_rat ) ) ).

% floor_less_zero
thf(fact_817_zero__less__floor,axiom,
    ! [X2: rat] :
      ( ( ord_less_int @ zero_zero_int @ ( archim3151403230148437115or_rat @ X2 ) )
      = ( ord_less_eq_rat @ one_one_rat @ X2 ) ) ).

% zero_less_floor
thf(fact_818_floor__le__zero,axiom,
    ! [X2: rat] :
      ( ( ord_less_eq_int @ ( archim3151403230148437115or_rat @ X2 ) @ zero_zero_int )
      = ( ord_less_rat @ X2 @ one_one_rat ) ) ).

% floor_le_zero
thf(fact_819_zero__less__ceiling,axiom,
    ! [X2: rat] :
      ( ( ord_less_int @ zero_zero_int @ ( archim2889992004027027881ng_rat @ X2 ) )
      = ( ord_less_rat @ zero_zero_rat @ X2 ) ) ).

% zero_less_ceiling
thf(fact_820_floor__less__one,axiom,
    ! [X2: rat] :
      ( ( ord_less_int @ ( archim3151403230148437115or_rat @ X2 ) @ one_one_int )
      = ( ord_less_rat @ X2 @ one_one_rat ) ) ).

% floor_less_one
thf(fact_821_one__less__ceiling,axiom,
    ! [X2: rat] :
      ( ( ord_less_int @ one_one_int @ ( archim2889992004027027881ng_rat @ X2 ) )
      = ( ord_less_rat @ one_one_rat @ X2 ) ) ).

% one_less_ceiling
thf(fact_822_neq__if__length__neq,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( size_size_list_nat @ Xs )
       != ( size_size_list_nat @ Ys ) )
     => ( Xs != Ys ) ) ).

% neq_if_length_neq
thf(fact_823_neq__if__length__neq,axiom,
    ! [Xs: list_int,Ys: list_int] :
      ( ( ( size_size_list_int @ Xs )
       != ( size_size_list_int @ Ys ) )
     => ( Xs != Ys ) ) ).

% neq_if_length_neq
thf(fact_824_neq__if__length__neq,axiom,
    ! [Xs: list_o,Ys: list_o] :
      ( ( ( size_size_list_o @ Xs )
       != ( size_size_list_o @ Ys ) )
     => ( Xs != Ys ) ) ).

% neq_if_length_neq
thf(fact_825_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_nat] :
      ( ( size_size_list_nat @ Xs2 )
      = N ) ).

% Ex_list_of_length
thf(fact_826_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_int] :
      ( ( size_size_list_int @ Xs2 )
      = N ) ).

% Ex_list_of_length
thf(fact_827_Ex__list__of__length,axiom,
    ! [N: nat] :
    ? [Xs2: list_o] :
      ( ( size_size_list_o @ Xs2 )
      = N ) ).

% Ex_list_of_length
thf(fact_828_length__induct,axiom,
    ! [P: list_nat > $o,Xs: list_nat] :
      ( ! [Xs2: list_nat] :
          ( ! [Ys2: list_nat] :
              ( ( ord_less_nat @ ( size_size_list_nat @ Ys2 ) @ ( size_size_list_nat @ Xs2 ) )
             => ( P @ Ys2 ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_829_length__induct,axiom,
    ! [P: list_int > $o,Xs: list_int] :
      ( ! [Xs2: list_int] :
          ( ! [Ys2: list_int] :
              ( ( ord_less_nat @ ( size_size_list_int @ Ys2 ) @ ( size_size_list_int @ Xs2 ) )
             => ( P @ Ys2 ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_830_length__induct,axiom,
    ! [P: list_o > $o,Xs: list_o] :
      ( ! [Xs2: list_o] :
          ( ! [Ys2: list_o] :
              ( ( ord_less_nat @ ( size_size_list_o @ Ys2 ) @ ( size_size_list_o @ Xs2 ) )
             => ( P @ Ys2 ) )
         => ( P @ Xs2 ) )
     => ( P @ Xs ) ) ).

% length_induct
thf(fact_831_floor__less__iff,axiom,
    ! [X2: rat,Z2: int] :
      ( ( ord_less_int @ ( archim3151403230148437115or_rat @ X2 ) @ Z2 )
      = ( ord_less_rat @ X2 @ ( ring_1_of_int_rat @ Z2 ) ) ) ).

% floor_less_iff
thf(fact_832_minf_I7_J,axiom,
    ! [T: code_integer] :
    ? [Z4: code_integer] :
    ! [X4: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X4 @ Z4 )
     => ~ ( ord_le6747313008572928689nteger @ T @ X4 ) ) ).

% minf(7)
thf(fact_833_minf_I7_J,axiom,
    ! [T: rat] :
    ? [Z4: rat] :
    ! [X4: rat] :
      ( ( ord_less_rat @ X4 @ Z4 )
     => ~ ( ord_less_rat @ T @ X4 ) ) ).

% minf(7)
thf(fact_834_minf_I7_J,axiom,
    ! [T: num] :
    ? [Z4: num] :
    ! [X4: num] :
      ( ( ord_less_num @ X4 @ Z4 )
     => ~ ( ord_less_num @ T @ X4 ) ) ).

% minf(7)
thf(fact_835_minf_I7_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z4 )
     => ~ ( ord_less_nat @ T @ X4 ) ) ).

% minf(7)
thf(fact_836_minf_I7_J,axiom,
    ! [T: int] :
    ? [Z4: int] :
    ! [X4: int] :
      ( ( ord_less_int @ X4 @ Z4 )
     => ~ ( ord_less_int @ T @ X4 ) ) ).

% minf(7)
thf(fact_837_minf_I5_J,axiom,
    ! [T: code_integer] :
    ? [Z4: code_integer] :
    ! [X4: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X4 @ Z4 )
     => ( ord_le6747313008572928689nteger @ X4 @ T ) ) ).

% minf(5)
thf(fact_838_minf_I5_J,axiom,
    ! [T: rat] :
    ? [Z4: rat] :
    ! [X4: rat] :
      ( ( ord_less_rat @ X4 @ Z4 )
     => ( ord_less_rat @ X4 @ T ) ) ).

% minf(5)
thf(fact_839_minf_I5_J,axiom,
    ! [T: num] :
    ? [Z4: num] :
    ! [X4: num] :
      ( ( ord_less_num @ X4 @ Z4 )
     => ( ord_less_num @ X4 @ T ) ) ).

% minf(5)
thf(fact_840_minf_I5_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z4 )
     => ( ord_less_nat @ X4 @ T ) ) ).

% minf(5)
thf(fact_841_minf_I5_J,axiom,
    ! [T: int] :
    ? [Z4: int] :
    ! [X4: int] :
      ( ( ord_less_int @ X4 @ Z4 )
     => ( ord_less_int @ X4 @ T ) ) ).

% minf(5)
thf(fact_842_minf_I4_J,axiom,
    ! [T: code_integer] :
    ? [Z4: code_integer] :
    ! [X4: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X4 @ Z4 )
     => ( X4 != T ) ) ).

% minf(4)
thf(fact_843_minf_I4_J,axiom,
    ! [T: rat] :
    ? [Z4: rat] :
    ! [X4: rat] :
      ( ( ord_less_rat @ X4 @ Z4 )
     => ( X4 != T ) ) ).

% minf(4)
thf(fact_844_minf_I4_J,axiom,
    ! [T: num] :
    ? [Z4: num] :
    ! [X4: num] :
      ( ( ord_less_num @ X4 @ Z4 )
     => ( X4 != T ) ) ).

% minf(4)
thf(fact_845_minf_I4_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z4 )
     => ( X4 != T ) ) ).

% minf(4)
thf(fact_846_minf_I4_J,axiom,
    ! [T: int] :
    ? [Z4: int] :
    ! [X4: int] :
      ( ( ord_less_int @ X4 @ Z4 )
     => ( X4 != T ) ) ).

% minf(4)
thf(fact_847_minf_I3_J,axiom,
    ! [T: code_integer] :
    ? [Z4: code_integer] :
    ! [X4: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X4 @ Z4 )
     => ( X4 != T ) ) ).

% minf(3)
thf(fact_848_minf_I3_J,axiom,
    ! [T: rat] :
    ? [Z4: rat] :
    ! [X4: rat] :
      ( ( ord_less_rat @ X4 @ Z4 )
     => ( X4 != T ) ) ).

% minf(3)
thf(fact_849_minf_I3_J,axiom,
    ! [T: num] :
    ? [Z4: num] :
    ! [X4: num] :
      ( ( ord_less_num @ X4 @ Z4 )
     => ( X4 != T ) ) ).

% minf(3)
thf(fact_850_minf_I3_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z4 )
     => ( X4 != T ) ) ).

% minf(3)
thf(fact_851_minf_I3_J,axiom,
    ! [T: int] :
    ? [Z4: int] :
    ! [X4: int] :
      ( ( ord_less_int @ X4 @ Z4 )
     => ( X4 != T ) ) ).

% minf(3)
thf(fact_852_minf_I2_J,axiom,
    ! [P: code_integer > $o,P2: code_integer > $o,Q: code_integer > $o,Q3: code_integer > $o] :
      ( ? [Z5: code_integer] :
        ! [X3: code_integer] :
          ( ( ord_le6747313008572928689nteger @ X3 @ Z5 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: code_integer] :
          ! [X3: code_integer] :
            ( ( ord_le6747313008572928689nteger @ X3 @ Z5 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: code_integer] :
          ! [X4: code_integer] :
            ( ( ord_le6747313008572928689nteger @ X4 @ Z4 )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                | ( Q3 @ X4 ) ) ) ) ) ) ).

% minf(2)
thf(fact_853_minf_I2_J,axiom,
    ! [P: rat > $o,P2: rat > $o,Q: rat > $o,Q3: rat > $o] :
      ( ? [Z5: rat] :
        ! [X3: rat] :
          ( ( ord_less_rat @ X3 @ Z5 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: rat] :
          ! [X3: rat] :
            ( ( ord_less_rat @ X3 @ Z5 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: rat] :
          ! [X4: rat] :
            ( ( ord_less_rat @ X4 @ Z4 )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                | ( Q3 @ X4 ) ) ) ) ) ) ).

% minf(2)
thf(fact_854_minf_I2_J,axiom,
    ! [P: num > $o,P2: num > $o,Q: num > $o,Q3: num > $o] :
      ( ? [Z5: num] :
        ! [X3: num] :
          ( ( ord_less_num @ X3 @ Z5 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: num] :
          ! [X3: num] :
            ( ( ord_less_num @ X3 @ Z5 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: num] :
          ! [X4: num] :
            ( ( ord_less_num @ X4 @ Z4 )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                | ( Q3 @ X4 ) ) ) ) ) ) ).

% minf(2)
thf(fact_855_minf_I2_J,axiom,
    ! [P: nat > $o,P2: nat > $o,Q: nat > $o,Q3: nat > $o] :
      ( ? [Z5: nat] :
        ! [X3: nat] :
          ( ( ord_less_nat @ X3 @ Z5 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: nat] :
          ! [X3: nat] :
            ( ( ord_less_nat @ X3 @ Z5 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: nat] :
          ! [X4: nat] :
            ( ( ord_less_nat @ X4 @ Z4 )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                | ( Q3 @ X4 ) ) ) ) ) ) ).

% minf(2)
thf(fact_856_minf_I2_J,axiom,
    ! [P: int > $o,P2: int > $o,Q: int > $o,Q3: int > $o] :
      ( ? [Z5: int] :
        ! [X3: int] :
          ( ( ord_less_int @ X3 @ Z5 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: int] :
          ! [X3: int] :
            ( ( ord_less_int @ X3 @ Z5 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: int] :
          ! [X4: int] :
            ( ( ord_less_int @ X4 @ Z4 )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                | ( Q3 @ X4 ) ) ) ) ) ) ).

% minf(2)
thf(fact_857_minf_I1_J,axiom,
    ! [P: code_integer > $o,P2: code_integer > $o,Q: code_integer > $o,Q3: code_integer > $o] :
      ( ? [Z5: code_integer] :
        ! [X3: code_integer] :
          ( ( ord_le6747313008572928689nteger @ X3 @ Z5 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: code_integer] :
          ! [X3: code_integer] :
            ( ( ord_le6747313008572928689nteger @ X3 @ Z5 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: code_integer] :
          ! [X4: code_integer] :
            ( ( ord_le6747313008572928689nteger @ X4 @ Z4 )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                & ( Q3 @ X4 ) ) ) ) ) ) ).

% minf(1)
thf(fact_858_minf_I1_J,axiom,
    ! [P: rat > $o,P2: rat > $o,Q: rat > $o,Q3: rat > $o] :
      ( ? [Z5: rat] :
        ! [X3: rat] :
          ( ( ord_less_rat @ X3 @ Z5 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: rat] :
          ! [X3: rat] :
            ( ( ord_less_rat @ X3 @ Z5 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: rat] :
          ! [X4: rat] :
            ( ( ord_less_rat @ X4 @ Z4 )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                & ( Q3 @ X4 ) ) ) ) ) ) ).

% minf(1)
thf(fact_859_minf_I1_J,axiom,
    ! [P: num > $o,P2: num > $o,Q: num > $o,Q3: num > $o] :
      ( ? [Z5: num] :
        ! [X3: num] :
          ( ( ord_less_num @ X3 @ Z5 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: num] :
          ! [X3: num] :
            ( ( ord_less_num @ X3 @ Z5 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: num] :
          ! [X4: num] :
            ( ( ord_less_num @ X4 @ Z4 )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                & ( Q3 @ X4 ) ) ) ) ) ) ).

% minf(1)
thf(fact_860_minf_I1_J,axiom,
    ! [P: nat > $o,P2: nat > $o,Q: nat > $o,Q3: nat > $o] :
      ( ? [Z5: nat] :
        ! [X3: nat] :
          ( ( ord_less_nat @ X3 @ Z5 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: nat] :
          ! [X3: nat] :
            ( ( ord_less_nat @ X3 @ Z5 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: nat] :
          ! [X4: nat] :
            ( ( ord_less_nat @ X4 @ Z4 )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                & ( Q3 @ X4 ) ) ) ) ) ) ).

% minf(1)
thf(fact_861_minf_I1_J,axiom,
    ! [P: int > $o,P2: int > $o,Q: int > $o,Q3: int > $o] :
      ( ? [Z5: int] :
        ! [X3: int] :
          ( ( ord_less_int @ X3 @ Z5 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: int] :
          ! [X3: int] :
            ( ( ord_less_int @ X3 @ Z5 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: int] :
          ! [X4: int] :
            ( ( ord_less_int @ X4 @ Z4 )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                & ( Q3 @ X4 ) ) ) ) ) ) ).

% minf(1)
thf(fact_862_pinf_I7_J,axiom,
    ! [T: code_integer] :
    ? [Z4: code_integer] :
    ! [X4: code_integer] :
      ( ( ord_le6747313008572928689nteger @ Z4 @ X4 )
     => ( ord_le6747313008572928689nteger @ T @ X4 ) ) ).

% pinf(7)
thf(fact_863_pinf_I7_J,axiom,
    ! [T: rat] :
    ? [Z4: rat] :
    ! [X4: rat] :
      ( ( ord_less_rat @ Z4 @ X4 )
     => ( ord_less_rat @ T @ X4 ) ) ).

% pinf(7)
thf(fact_864_pinf_I7_J,axiom,
    ! [T: num] :
    ? [Z4: num] :
    ! [X4: num] :
      ( ( ord_less_num @ Z4 @ X4 )
     => ( ord_less_num @ T @ X4 ) ) ).

% pinf(7)
thf(fact_865_pinf_I7_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z4 @ X4 )
     => ( ord_less_nat @ T @ X4 ) ) ).

% pinf(7)
thf(fact_866_pinf_I7_J,axiom,
    ! [T: int] :
    ? [Z4: int] :
    ! [X4: int] :
      ( ( ord_less_int @ Z4 @ X4 )
     => ( ord_less_int @ T @ X4 ) ) ).

% pinf(7)
thf(fact_867_pinf_I5_J,axiom,
    ! [T: code_integer] :
    ? [Z4: code_integer] :
    ! [X4: code_integer] :
      ( ( ord_le6747313008572928689nteger @ Z4 @ X4 )
     => ~ ( ord_le6747313008572928689nteger @ X4 @ T ) ) ).

% pinf(5)
thf(fact_868_pinf_I5_J,axiom,
    ! [T: rat] :
    ? [Z4: rat] :
    ! [X4: rat] :
      ( ( ord_less_rat @ Z4 @ X4 )
     => ~ ( ord_less_rat @ X4 @ T ) ) ).

% pinf(5)
thf(fact_869_pinf_I5_J,axiom,
    ! [T: num] :
    ? [Z4: num] :
    ! [X4: num] :
      ( ( ord_less_num @ Z4 @ X4 )
     => ~ ( ord_less_num @ X4 @ T ) ) ).

% pinf(5)
thf(fact_870_pinf_I5_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z4 @ X4 )
     => ~ ( ord_less_nat @ X4 @ T ) ) ).

% pinf(5)
thf(fact_871_pinf_I5_J,axiom,
    ! [T: int] :
    ? [Z4: int] :
    ! [X4: int] :
      ( ( ord_less_int @ Z4 @ X4 )
     => ~ ( ord_less_int @ X4 @ T ) ) ).

% pinf(5)
thf(fact_872_pinf_I4_J,axiom,
    ! [T: code_integer] :
    ? [Z4: code_integer] :
    ! [X4: code_integer] :
      ( ( ord_le6747313008572928689nteger @ Z4 @ X4 )
     => ( X4 != T ) ) ).

% pinf(4)
thf(fact_873_pinf_I4_J,axiom,
    ! [T: rat] :
    ? [Z4: rat] :
    ! [X4: rat] :
      ( ( ord_less_rat @ Z4 @ X4 )
     => ( X4 != T ) ) ).

% pinf(4)
thf(fact_874_pinf_I4_J,axiom,
    ! [T: num] :
    ? [Z4: num] :
    ! [X4: num] :
      ( ( ord_less_num @ Z4 @ X4 )
     => ( X4 != T ) ) ).

% pinf(4)
thf(fact_875_pinf_I4_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z4 @ X4 )
     => ( X4 != T ) ) ).

% pinf(4)
thf(fact_876_pinf_I4_J,axiom,
    ! [T: int] :
    ? [Z4: int] :
    ! [X4: int] :
      ( ( ord_less_int @ Z4 @ X4 )
     => ( X4 != T ) ) ).

% pinf(4)
thf(fact_877_pinf_I3_J,axiom,
    ! [T: code_integer] :
    ? [Z4: code_integer] :
    ! [X4: code_integer] :
      ( ( ord_le6747313008572928689nteger @ Z4 @ X4 )
     => ( X4 != T ) ) ).

% pinf(3)
thf(fact_878_pinf_I3_J,axiom,
    ! [T: rat] :
    ? [Z4: rat] :
    ! [X4: rat] :
      ( ( ord_less_rat @ Z4 @ X4 )
     => ( X4 != T ) ) ).

% pinf(3)
thf(fact_879_pinf_I3_J,axiom,
    ! [T: num] :
    ? [Z4: num] :
    ! [X4: num] :
      ( ( ord_less_num @ Z4 @ X4 )
     => ( X4 != T ) ) ).

% pinf(3)
thf(fact_880_pinf_I3_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z4 @ X4 )
     => ( X4 != T ) ) ).

% pinf(3)
thf(fact_881_pinf_I3_J,axiom,
    ! [T: int] :
    ? [Z4: int] :
    ! [X4: int] :
      ( ( ord_less_int @ Z4 @ X4 )
     => ( X4 != T ) ) ).

% pinf(3)
thf(fact_882_pinf_I2_J,axiom,
    ! [P: code_integer > $o,P2: code_integer > $o,Q: code_integer > $o,Q3: code_integer > $o] :
      ( ? [Z5: code_integer] :
        ! [X3: code_integer] :
          ( ( ord_le6747313008572928689nteger @ Z5 @ X3 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: code_integer] :
          ! [X3: code_integer] :
            ( ( ord_le6747313008572928689nteger @ Z5 @ X3 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: code_integer] :
          ! [X4: code_integer] :
            ( ( ord_le6747313008572928689nteger @ Z4 @ X4 )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                | ( Q3 @ X4 ) ) ) ) ) ) ).

% pinf(2)
thf(fact_883_pinf_I2_J,axiom,
    ! [P: rat > $o,P2: rat > $o,Q: rat > $o,Q3: rat > $o] :
      ( ? [Z5: rat] :
        ! [X3: rat] :
          ( ( ord_less_rat @ Z5 @ X3 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: rat] :
          ! [X3: rat] :
            ( ( ord_less_rat @ Z5 @ X3 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: rat] :
          ! [X4: rat] :
            ( ( ord_less_rat @ Z4 @ X4 )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                | ( Q3 @ X4 ) ) ) ) ) ) ).

% pinf(2)
thf(fact_884_pinf_I2_J,axiom,
    ! [P: num > $o,P2: num > $o,Q: num > $o,Q3: num > $o] :
      ( ? [Z5: num] :
        ! [X3: num] :
          ( ( ord_less_num @ Z5 @ X3 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: num] :
          ! [X3: num] :
            ( ( ord_less_num @ Z5 @ X3 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: num] :
          ! [X4: num] :
            ( ( ord_less_num @ Z4 @ X4 )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                | ( Q3 @ X4 ) ) ) ) ) ) ).

% pinf(2)
thf(fact_885_pinf_I2_J,axiom,
    ! [P: nat > $o,P2: nat > $o,Q: nat > $o,Q3: nat > $o] :
      ( ? [Z5: nat] :
        ! [X3: nat] :
          ( ( ord_less_nat @ Z5 @ X3 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: nat] :
          ! [X3: nat] :
            ( ( ord_less_nat @ Z5 @ X3 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: nat] :
          ! [X4: nat] :
            ( ( ord_less_nat @ Z4 @ X4 )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                | ( Q3 @ X4 ) ) ) ) ) ) ).

% pinf(2)
thf(fact_886_pinf_I2_J,axiom,
    ! [P: int > $o,P2: int > $o,Q: int > $o,Q3: int > $o] :
      ( ? [Z5: int] :
        ! [X3: int] :
          ( ( ord_less_int @ Z5 @ X3 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: int] :
          ! [X3: int] :
            ( ( ord_less_int @ Z5 @ X3 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: int] :
          ! [X4: int] :
            ( ( ord_less_int @ Z4 @ X4 )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                | ( Q3 @ X4 ) ) ) ) ) ) ).

% pinf(2)
thf(fact_887_pinf_I1_J,axiom,
    ! [P: code_integer > $o,P2: code_integer > $o,Q: code_integer > $o,Q3: code_integer > $o] :
      ( ? [Z5: code_integer] :
        ! [X3: code_integer] :
          ( ( ord_le6747313008572928689nteger @ Z5 @ X3 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: code_integer] :
          ! [X3: code_integer] :
            ( ( ord_le6747313008572928689nteger @ Z5 @ X3 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: code_integer] :
          ! [X4: code_integer] :
            ( ( ord_le6747313008572928689nteger @ Z4 @ X4 )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                & ( Q3 @ X4 ) ) ) ) ) ) ).

% pinf(1)
thf(fact_888_pinf_I1_J,axiom,
    ! [P: rat > $o,P2: rat > $o,Q: rat > $o,Q3: rat > $o] :
      ( ? [Z5: rat] :
        ! [X3: rat] :
          ( ( ord_less_rat @ Z5 @ X3 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: rat] :
          ! [X3: rat] :
            ( ( ord_less_rat @ Z5 @ X3 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: rat] :
          ! [X4: rat] :
            ( ( ord_less_rat @ Z4 @ X4 )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                & ( Q3 @ X4 ) ) ) ) ) ) ).

% pinf(1)
thf(fact_889_pinf_I1_J,axiom,
    ! [P: num > $o,P2: num > $o,Q: num > $o,Q3: num > $o] :
      ( ? [Z5: num] :
        ! [X3: num] :
          ( ( ord_less_num @ Z5 @ X3 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: num] :
          ! [X3: num] :
            ( ( ord_less_num @ Z5 @ X3 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: num] :
          ! [X4: num] :
            ( ( ord_less_num @ Z4 @ X4 )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                & ( Q3 @ X4 ) ) ) ) ) ) ).

% pinf(1)
thf(fact_890_pinf_I1_J,axiom,
    ! [P: nat > $o,P2: nat > $o,Q: nat > $o,Q3: nat > $o] :
      ( ? [Z5: nat] :
        ! [X3: nat] :
          ( ( ord_less_nat @ Z5 @ X3 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: nat] :
          ! [X3: nat] :
            ( ( ord_less_nat @ Z5 @ X3 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: nat] :
          ! [X4: nat] :
            ( ( ord_less_nat @ Z4 @ X4 )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                & ( Q3 @ X4 ) ) ) ) ) ) ).

% pinf(1)
thf(fact_891_pinf_I1_J,axiom,
    ! [P: int > $o,P2: int > $o,Q: int > $o,Q3: int > $o] :
      ( ? [Z5: int] :
        ! [X3: int] :
          ( ( ord_less_int @ Z5 @ X3 )
         => ( ( P @ X3 )
            = ( P2 @ X3 ) ) )
     => ( ? [Z5: int] :
          ! [X3: int] :
            ( ( ord_less_int @ Z5 @ X3 )
           => ( ( Q @ X3 )
              = ( Q3 @ X3 ) ) )
       => ? [Z4: int] :
          ! [X4: int] :
            ( ( ord_less_int @ Z4 @ X4 )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
              = ( ( P2 @ X4 )
                & ( Q3 @ X4 ) ) ) ) ) ) ).

% pinf(1)
thf(fact_892_lt__ex,axiom,
    ! [X2: rat] :
    ? [Y2: rat] : ( ord_less_rat @ Y2 @ X2 ) ).

% lt_ex
thf(fact_893_lt__ex,axiom,
    ! [X2: int] :
    ? [Y2: int] : ( ord_less_int @ Y2 @ X2 ) ).

% lt_ex
thf(fact_894_gt__ex,axiom,
    ! [X2: rat] :
    ? [X_12: rat] : ( ord_less_rat @ X2 @ X_12 ) ).

% gt_ex
thf(fact_895_gt__ex,axiom,
    ! [X2: nat] :
    ? [X_12: nat] : ( ord_less_nat @ X2 @ X_12 ) ).

% gt_ex
thf(fact_896_gt__ex,axiom,
    ! [X2: int] :
    ? [X_12: int] : ( ord_less_int @ X2 @ X_12 ) ).

% gt_ex
thf(fact_897_dense,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ X2 @ Y )
     => ? [Z4: rat] :
          ( ( ord_less_rat @ X2 @ Z4 )
          & ( ord_less_rat @ Z4 @ Y ) ) ) ).

% dense
thf(fact_898_less__imp__neq,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X2 @ Y )
     => ( X2 != Y ) ) ).

% less_imp_neq
thf(fact_899_less__imp__neq,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ X2 @ Y )
     => ( X2 != Y ) ) ).

% less_imp_neq
thf(fact_900_less__imp__neq,axiom,
    ! [X2: num,Y: num] :
      ( ( ord_less_num @ X2 @ Y )
     => ( X2 != Y ) ) ).

% less_imp_neq
thf(fact_901_less__imp__neq,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ( X2 != Y ) ) ).

% less_imp_neq
thf(fact_902_less__imp__neq,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_int @ X2 @ Y )
     => ( X2 != Y ) ) ).

% less_imp_neq
thf(fact_903_order_Oasym,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ~ ( ord_le6747313008572928689nteger @ B @ A ) ) ).

% order.asym
thf(fact_904_order_Oasym,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ B )
     => ~ ( ord_less_rat @ B @ A ) ) ).

% order.asym
thf(fact_905_order_Oasym,axiom,
    ! [A: num,B: num] :
      ( ( ord_less_num @ A @ B )
     => ~ ( ord_less_num @ B @ A ) ) ).

% order.asym
thf(fact_906_order_Oasym,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ~ ( ord_less_nat @ B @ A ) ) ).

% order.asym
thf(fact_907_order_Oasym,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ B )
     => ~ ( ord_less_int @ B @ A ) ) ).

% order.asym
thf(fact_908_ord__eq__less__trans,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( A = B )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ord_le6747313008572928689nteger @ A @ C ) ) ) ).

% ord_eq_less_trans
thf(fact_909_ord__eq__less__trans,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( A = B )
     => ( ( ord_less_rat @ B @ C )
       => ( ord_less_rat @ A @ C ) ) ) ).

% ord_eq_less_trans
thf(fact_910_ord__eq__less__trans,axiom,
    ! [A: num,B: num,C: num] :
      ( ( A = B )
     => ( ( ord_less_num @ B @ C )
       => ( ord_less_num @ A @ C ) ) ) ).

% ord_eq_less_trans
thf(fact_911_ord__eq__less__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( A = B )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% ord_eq_less_trans
thf(fact_912_ord__eq__less__trans,axiom,
    ! [A: int,B: int,C: int] :
      ( ( A = B )
     => ( ( ord_less_int @ B @ C )
       => ( ord_less_int @ A @ C ) ) ) ).

% ord_eq_less_trans
thf(fact_913_ord__less__eq__trans,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( B = C )
       => ( ord_le6747313008572928689nteger @ A @ C ) ) ) ).

% ord_less_eq_trans
thf(fact_914_ord__less__eq__trans,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( B = C )
       => ( ord_less_rat @ A @ C ) ) ) ).

% ord_less_eq_trans
thf(fact_915_ord__less__eq__trans,axiom,
    ! [A: num,B: num,C: num] :
      ( ( ord_less_num @ A @ B )
     => ( ( B = C )
       => ( ord_less_num @ A @ C ) ) ) ).

% ord_less_eq_trans
thf(fact_916_ord__less__eq__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( B = C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% ord_less_eq_trans
thf(fact_917_ord__less__eq__trans,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( B = C )
       => ( ord_less_int @ A @ C ) ) ) ).

% ord_less_eq_trans
thf(fact_918_less__induct,axiom,
    ! [P: nat > $o,A: nat] :
      ( ! [X3: nat] :
          ( ! [Y5: nat] :
              ( ( ord_less_nat @ Y5 @ X3 )
             => ( P @ Y5 ) )
         => ( P @ X3 ) )
     => ( P @ A ) ) ).

% less_induct
thf(fact_919_antisym__conv3,axiom,
    ! [Y: code_integer,X2: code_integer] :
      ( ~ ( ord_le6747313008572928689nteger @ Y @ X2 )
     => ( ( ~ ( ord_le6747313008572928689nteger @ X2 @ Y ) )
        = ( X2 = Y ) ) ) ).

% antisym_conv3
thf(fact_920_antisym__conv3,axiom,
    ! [Y: rat,X2: rat] :
      ( ~ ( ord_less_rat @ Y @ X2 )
     => ( ( ~ ( ord_less_rat @ X2 @ Y ) )
        = ( X2 = Y ) ) ) ).

% antisym_conv3
thf(fact_921_antisym__conv3,axiom,
    ! [Y: num,X2: num] :
      ( ~ ( ord_less_num @ Y @ X2 )
     => ( ( ~ ( ord_less_num @ X2 @ Y ) )
        = ( X2 = Y ) ) ) ).

% antisym_conv3
thf(fact_922_antisym__conv3,axiom,
    ! [Y: nat,X2: nat] :
      ( ~ ( ord_less_nat @ Y @ X2 )
     => ( ( ~ ( ord_less_nat @ X2 @ Y ) )
        = ( X2 = Y ) ) ) ).

% antisym_conv3
thf(fact_923_antisym__conv3,axiom,
    ! [Y: int,X2: int] :
      ( ~ ( ord_less_int @ Y @ X2 )
     => ( ( ~ ( ord_less_int @ X2 @ Y ) )
        = ( X2 = Y ) ) ) ).

% antisym_conv3
thf(fact_924_linorder__cases,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ~ ( ord_le6747313008572928689nteger @ X2 @ Y )
     => ( ( X2 != Y )
       => ( ord_le6747313008572928689nteger @ Y @ X2 ) ) ) ).

% linorder_cases
thf(fact_925_linorder__cases,axiom,
    ! [X2: rat,Y: rat] :
      ( ~ ( ord_less_rat @ X2 @ Y )
     => ( ( X2 != Y )
       => ( ord_less_rat @ Y @ X2 ) ) ) ).

% linorder_cases
thf(fact_926_linorder__cases,axiom,
    ! [X2: num,Y: num] :
      ( ~ ( ord_less_num @ X2 @ Y )
     => ( ( X2 != Y )
       => ( ord_less_num @ Y @ X2 ) ) ) ).

% linorder_cases
thf(fact_927_linorder__cases,axiom,
    ! [X2: nat,Y: nat] :
      ( ~ ( ord_less_nat @ X2 @ Y )
     => ( ( X2 != Y )
       => ( ord_less_nat @ Y @ X2 ) ) ) ).

% linorder_cases
thf(fact_928_linorder__cases,axiom,
    ! [X2: int,Y: int] :
      ( ~ ( ord_less_int @ X2 @ Y )
     => ( ( X2 != Y )
       => ( ord_less_int @ Y @ X2 ) ) ) ).

% linorder_cases
thf(fact_929_dual__order_Oasym,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ B @ A )
     => ~ ( ord_le6747313008572928689nteger @ A @ B ) ) ).

% dual_order.asym
thf(fact_930_dual__order_Oasym,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_rat @ B @ A )
     => ~ ( ord_less_rat @ A @ B ) ) ).

% dual_order.asym
thf(fact_931_dual__order_Oasym,axiom,
    ! [B: num,A: num] :
      ( ( ord_less_num @ B @ A )
     => ~ ( ord_less_num @ A @ B ) ) ).

% dual_order.asym
thf(fact_932_dual__order_Oasym,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ B @ A )
     => ~ ( ord_less_nat @ A @ B ) ) ).

% dual_order.asym
thf(fact_933_dual__order_Oasym,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ B @ A )
     => ~ ( ord_less_int @ A @ B ) ) ).

% dual_order.asym
thf(fact_934_dual__order_Oirrefl,axiom,
    ! [A: code_integer] :
      ~ ( ord_le6747313008572928689nteger @ A @ A ) ).

% dual_order.irrefl
thf(fact_935_dual__order_Oirrefl,axiom,
    ! [A: rat] :
      ~ ( ord_less_rat @ A @ A ) ).

% dual_order.irrefl
thf(fact_936_dual__order_Oirrefl,axiom,
    ! [A: num] :
      ~ ( ord_less_num @ A @ A ) ).

% dual_order.irrefl
thf(fact_937_dual__order_Oirrefl,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ A ) ).

% dual_order.irrefl
thf(fact_938_dual__order_Oirrefl,axiom,
    ! [A: int] :
      ~ ( ord_less_int @ A @ A ) ).

% dual_order.irrefl
thf(fact_939_exists__least__iff,axiom,
    ( ( ^ [P4: nat > $o] :
        ? [X7: nat] : ( P4 @ X7 ) )
    = ( ^ [P5: nat > $o] :
        ? [N3: nat] :
          ( ( P5 @ N3 )
          & ! [M2: nat] :
              ( ( ord_less_nat @ M2 @ N3 )
             => ~ ( P5 @ M2 ) ) ) ) ) ).

% exists_least_iff
thf(fact_940_linorder__less__wlog,axiom,
    ! [P: code_integer > code_integer > $o,A: code_integer,B: code_integer] :
      ( ! [A3: code_integer,B3: code_integer] :
          ( ( ord_le6747313008572928689nteger @ A3 @ B3 )
         => ( P @ A3 @ B3 ) )
     => ( ! [A3: code_integer] : ( P @ A3 @ A3 )
       => ( ! [A3: code_integer,B3: code_integer] :
              ( ( P @ B3 @ A3 )
             => ( P @ A3 @ B3 ) )
         => ( P @ A @ B ) ) ) ) ).

% linorder_less_wlog
thf(fact_941_linorder__less__wlog,axiom,
    ! [P: rat > rat > $o,A: rat,B: rat] :
      ( ! [A3: rat,B3: rat] :
          ( ( ord_less_rat @ A3 @ B3 )
         => ( P @ A3 @ B3 ) )
     => ( ! [A3: rat] : ( P @ A3 @ A3 )
       => ( ! [A3: rat,B3: rat] :
              ( ( P @ B3 @ A3 )
             => ( P @ A3 @ B3 ) )
         => ( P @ A @ B ) ) ) ) ).

% linorder_less_wlog
thf(fact_942_linorder__less__wlog,axiom,
    ! [P: num > num > $o,A: num,B: num] :
      ( ! [A3: num,B3: num] :
          ( ( ord_less_num @ A3 @ B3 )
         => ( P @ A3 @ B3 ) )
     => ( ! [A3: num] : ( P @ A3 @ A3 )
       => ( ! [A3: num,B3: num] :
              ( ( P @ B3 @ A3 )
             => ( P @ A3 @ B3 ) )
         => ( P @ A @ B ) ) ) ) ).

% linorder_less_wlog
thf(fact_943_linorder__less__wlog,axiom,
    ! [P: nat > nat > $o,A: nat,B: nat] :
      ( ! [A3: nat,B3: nat] :
          ( ( ord_less_nat @ A3 @ B3 )
         => ( P @ A3 @ B3 ) )
     => ( ! [A3: nat] : ( P @ A3 @ A3 )
       => ( ! [A3: nat,B3: nat] :
              ( ( P @ B3 @ A3 )
             => ( P @ A3 @ B3 ) )
         => ( P @ A @ B ) ) ) ) ).

% linorder_less_wlog
thf(fact_944_linorder__less__wlog,axiom,
    ! [P: int > int > $o,A: int,B: int] :
      ( ! [A3: int,B3: int] :
          ( ( ord_less_int @ A3 @ B3 )
         => ( P @ A3 @ B3 ) )
     => ( ! [A3: int] : ( P @ A3 @ A3 )
       => ( ! [A3: int,B3: int] :
              ( ( P @ B3 @ A3 )
             => ( P @ A3 @ B3 ) )
         => ( P @ A @ B ) ) ) ) ).

% linorder_less_wlog
thf(fact_945_order_Ostrict__trans,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ord_le6747313008572928689nteger @ A @ C ) ) ) ).

% order.strict_trans
thf(fact_946_order_Ostrict__trans,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ B @ C )
       => ( ord_less_rat @ A @ C ) ) ) ).

% order.strict_trans
thf(fact_947_order_Ostrict__trans,axiom,
    ! [A: num,B: num,C: num] :
      ( ( ord_less_num @ A @ B )
     => ( ( ord_less_num @ B @ C )
       => ( ord_less_num @ A @ C ) ) ) ).

% order.strict_trans
thf(fact_948_order_Ostrict__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% order.strict_trans
thf(fact_949_order_Ostrict__trans,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ B @ C )
       => ( ord_less_int @ A @ C ) ) ) ).

% order.strict_trans
thf(fact_950_not__less__iff__gr__or__eq,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ~ ( ord_le6747313008572928689nteger @ X2 @ Y ) )
      = ( ( ord_le6747313008572928689nteger @ Y @ X2 )
        | ( X2 = Y ) ) ) ).

% not_less_iff_gr_or_eq
thf(fact_951_not__less__iff__gr__or__eq,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ~ ( ord_less_rat @ X2 @ Y ) )
      = ( ( ord_less_rat @ Y @ X2 )
        | ( X2 = Y ) ) ) ).

% not_less_iff_gr_or_eq
thf(fact_952_not__less__iff__gr__or__eq,axiom,
    ! [X2: num,Y: num] :
      ( ( ~ ( ord_less_num @ X2 @ Y ) )
      = ( ( ord_less_num @ Y @ X2 )
        | ( X2 = Y ) ) ) ).

% not_less_iff_gr_or_eq
thf(fact_953_not__less__iff__gr__or__eq,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ~ ( ord_less_nat @ X2 @ Y ) )
      = ( ( ord_less_nat @ Y @ X2 )
        | ( X2 = Y ) ) ) ).

% not_less_iff_gr_or_eq
thf(fact_954_not__less__iff__gr__or__eq,axiom,
    ! [X2: int,Y: int] :
      ( ( ~ ( ord_less_int @ X2 @ Y ) )
      = ( ( ord_less_int @ Y @ X2 )
        | ( X2 = Y ) ) ) ).

% not_less_iff_gr_or_eq
thf(fact_955_dual__order_Ostrict__trans,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ B @ A )
     => ( ( ord_le6747313008572928689nteger @ C @ B )
       => ( ord_le6747313008572928689nteger @ C @ A ) ) ) ).

% dual_order.strict_trans
thf(fact_956_dual__order_Ostrict__trans,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_rat @ B @ A )
     => ( ( ord_less_rat @ C @ B )
       => ( ord_less_rat @ C @ A ) ) ) ).

% dual_order.strict_trans
thf(fact_957_dual__order_Ostrict__trans,axiom,
    ! [B: num,A: num,C: num] :
      ( ( ord_less_num @ B @ A )
     => ( ( ord_less_num @ C @ B )
       => ( ord_less_num @ C @ A ) ) ) ).

% dual_order.strict_trans
thf(fact_958_dual__order_Ostrict__trans,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ord_less_nat @ B @ A )
     => ( ( ord_less_nat @ C @ B )
       => ( ord_less_nat @ C @ A ) ) ) ).

% dual_order.strict_trans
thf(fact_959_dual__order_Ostrict__trans,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_int @ B @ A )
     => ( ( ord_less_int @ C @ B )
       => ( ord_less_int @ C @ A ) ) ) ).

% dual_order.strict_trans
thf(fact_960_order_Ostrict__implies__not__eq,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( A != B ) ) ).

% order.strict_implies_not_eq
thf(fact_961_order_Ostrict__implies__not__eq,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( A != B ) ) ).

% order.strict_implies_not_eq
thf(fact_962_order_Ostrict__implies__not__eq,axiom,
    ! [A: num,B: num] :
      ( ( ord_less_num @ A @ B )
     => ( A != B ) ) ).

% order.strict_implies_not_eq
thf(fact_963_order_Ostrict__implies__not__eq,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( A != B ) ) ).

% order.strict_implies_not_eq
thf(fact_964_order_Ostrict__implies__not__eq,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ B )
     => ( A != B ) ) ).

% order.strict_implies_not_eq
thf(fact_965_dual__order_Ostrict__implies__not__eq,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ B @ A )
     => ( A != B ) ) ).

% dual_order.strict_implies_not_eq
thf(fact_966_dual__order_Ostrict__implies__not__eq,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_rat @ B @ A )
     => ( A != B ) ) ).

% dual_order.strict_implies_not_eq
thf(fact_967_dual__order_Ostrict__implies__not__eq,axiom,
    ! [B: num,A: num] :
      ( ( ord_less_num @ B @ A )
     => ( A != B ) ) ).

% dual_order.strict_implies_not_eq
thf(fact_968_dual__order_Ostrict__implies__not__eq,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ B @ A )
     => ( A != B ) ) ).

% dual_order.strict_implies_not_eq
thf(fact_969_dual__order_Ostrict__implies__not__eq,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ B @ A )
     => ( A != B ) ) ).

% dual_order.strict_implies_not_eq
thf(fact_970_linorder__neqE,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( X2 != Y )
     => ( ~ ( ord_le6747313008572928689nteger @ X2 @ Y )
       => ( ord_le6747313008572928689nteger @ Y @ X2 ) ) ) ).

% linorder_neqE
thf(fact_971_linorder__neqE,axiom,
    ! [X2: rat,Y: rat] :
      ( ( X2 != Y )
     => ( ~ ( ord_less_rat @ X2 @ Y )
       => ( ord_less_rat @ Y @ X2 ) ) ) ).

% linorder_neqE
thf(fact_972_linorder__neqE,axiom,
    ! [X2: num,Y: num] :
      ( ( X2 != Y )
     => ( ~ ( ord_less_num @ X2 @ Y )
       => ( ord_less_num @ Y @ X2 ) ) ) ).

% linorder_neqE
thf(fact_973_linorder__neqE,axiom,
    ! [X2: nat,Y: nat] :
      ( ( X2 != Y )
     => ( ~ ( ord_less_nat @ X2 @ Y )
       => ( ord_less_nat @ Y @ X2 ) ) ) ).

% linorder_neqE
thf(fact_974_linorder__neqE,axiom,
    ! [X2: int,Y: int] :
      ( ( X2 != Y )
     => ( ~ ( ord_less_int @ X2 @ Y )
       => ( ord_less_int @ Y @ X2 ) ) ) ).

% linorder_neqE
thf(fact_975_order__less__asym,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X2 @ Y )
     => ~ ( ord_le6747313008572928689nteger @ Y @ X2 ) ) ).

% order_less_asym
thf(fact_976_order__less__asym,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ X2 @ Y )
     => ~ ( ord_less_rat @ Y @ X2 ) ) ).

% order_less_asym
thf(fact_977_order__less__asym,axiom,
    ! [X2: num,Y: num] :
      ( ( ord_less_num @ X2 @ Y )
     => ~ ( ord_less_num @ Y @ X2 ) ) ).

% order_less_asym
thf(fact_978_order__less__asym,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ~ ( ord_less_nat @ Y @ X2 ) ) ).

% order_less_asym
thf(fact_979_order__less__asym,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_int @ X2 @ Y )
     => ~ ( ord_less_int @ Y @ X2 ) ) ).

% order_less_asym
thf(fact_980_linorder__neq__iff,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( X2 != Y )
      = ( ( ord_le6747313008572928689nteger @ X2 @ Y )
        | ( ord_le6747313008572928689nteger @ Y @ X2 ) ) ) ).

% linorder_neq_iff
thf(fact_981_linorder__neq__iff,axiom,
    ! [X2: rat,Y: rat] :
      ( ( X2 != Y )
      = ( ( ord_less_rat @ X2 @ Y )
        | ( ord_less_rat @ Y @ X2 ) ) ) ).

% linorder_neq_iff
thf(fact_982_linorder__neq__iff,axiom,
    ! [X2: num,Y: num] :
      ( ( X2 != Y )
      = ( ( ord_less_num @ X2 @ Y )
        | ( ord_less_num @ Y @ X2 ) ) ) ).

% linorder_neq_iff
thf(fact_983_linorder__neq__iff,axiom,
    ! [X2: nat,Y: nat] :
      ( ( X2 != Y )
      = ( ( ord_less_nat @ X2 @ Y )
        | ( ord_less_nat @ Y @ X2 ) ) ) ).

% linorder_neq_iff
thf(fact_984_linorder__neq__iff,axiom,
    ! [X2: int,Y: int] :
      ( ( X2 != Y )
      = ( ( ord_less_int @ X2 @ Y )
        | ( ord_less_int @ Y @ X2 ) ) ) ).

% linorder_neq_iff
thf(fact_985_order__less__asym_H,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ~ ( ord_le6747313008572928689nteger @ B @ A ) ) ).

% order_less_asym'
thf(fact_986_order__less__asym_H,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ B )
     => ~ ( ord_less_rat @ B @ A ) ) ).

% order_less_asym'
thf(fact_987_order__less__asym_H,axiom,
    ! [A: num,B: num] :
      ( ( ord_less_num @ A @ B )
     => ~ ( ord_less_num @ B @ A ) ) ).

% order_less_asym'
thf(fact_988_order__less__asym_H,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ~ ( ord_less_nat @ B @ A ) ) ).

% order_less_asym'
thf(fact_989_order__less__asym_H,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ B )
     => ~ ( ord_less_int @ B @ A ) ) ).

% order_less_asym'
thf(fact_990_order__less__trans,axiom,
    ! [X2: code_integer,Y: code_integer,Z2: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X2 @ Y )
     => ( ( ord_le6747313008572928689nteger @ Y @ Z2 )
       => ( ord_le6747313008572928689nteger @ X2 @ Z2 ) ) ) ).

% order_less_trans
thf(fact_991_order__less__trans,axiom,
    ! [X2: rat,Y: rat,Z2: rat] :
      ( ( ord_less_rat @ X2 @ Y )
     => ( ( ord_less_rat @ Y @ Z2 )
       => ( ord_less_rat @ X2 @ Z2 ) ) ) ).

% order_less_trans
thf(fact_992_order__less__trans,axiom,
    ! [X2: num,Y: num,Z2: num] :
      ( ( ord_less_num @ X2 @ Y )
     => ( ( ord_less_num @ Y @ Z2 )
       => ( ord_less_num @ X2 @ Z2 ) ) ) ).

% order_less_trans
thf(fact_993_order__less__trans,axiom,
    ! [X2: nat,Y: nat,Z2: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ( ( ord_less_nat @ Y @ Z2 )
       => ( ord_less_nat @ X2 @ Z2 ) ) ) ).

% order_less_trans
thf(fact_994_order__less__trans,axiom,
    ! [X2: int,Y: int,Z2: int] :
      ( ( ord_less_int @ X2 @ Y )
     => ( ( ord_less_int @ Y @ Z2 )
       => ( ord_less_int @ X2 @ Z2 ) ) ) ).

% order_less_trans
thf(fact_995_ord__eq__less__subst,axiom,
    ! [A: code_integer,F: code_integer > code_integer,B: code_integer,C: code_integer] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_996_ord__eq__less__subst,axiom,
    ! [A: rat,F: code_integer > rat,B: code_integer,C: code_integer] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_997_ord__eq__less__subst,axiom,
    ! [A: num,F: code_integer > num,B: code_integer,C: code_integer] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_less_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_num @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_998_ord__eq__less__subst,axiom,
    ! [A: nat,F: code_integer > nat,B: code_integer,C: code_integer] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_less_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_999_ord__eq__less__subst,axiom,
    ! [A: int,F: code_integer > int,B: code_integer,C: code_integer] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_less_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_int @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_1000_ord__eq__less__subst,axiom,
    ! [A: code_integer,F: rat > code_integer,B: rat,C: rat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_1001_ord__eq__less__subst,axiom,
    ! [A: rat,F: rat > rat,B: rat,C: rat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_1002_ord__eq__less__subst,axiom,
    ! [A: num,F: rat > num,B: rat,C: rat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_less_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_num @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_1003_ord__eq__less__subst,axiom,
    ! [A: nat,F: rat > nat,B: rat,C: rat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_less_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_1004_ord__eq__less__subst,axiom,
    ! [A: int,F: rat > int,B: rat,C: rat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_less_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_int @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_1005_ord__less__eq__subst,axiom,
    ! [A: code_integer,B: code_integer,F: code_integer > code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ ( F @ A ) @ C ) ) ) ) ).

% ord_less_eq_subst
thf(fact_1006_ord__less__eq__subst,axiom,
    ! [A: code_integer,B: code_integer,F: code_integer > rat,C: rat] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ ( F @ A ) @ C ) ) ) ) ).

% ord_less_eq_subst
thf(fact_1007_ord__less__eq__subst,axiom,
    ! [A: code_integer,B: code_integer,F: code_integer > num,C: num] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_less_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_num @ ( F @ A ) @ C ) ) ) ) ).

% ord_less_eq_subst
thf(fact_1008_ord__less__eq__subst,axiom,
    ! [A: code_integer,B: code_integer,F: code_integer > nat,C: nat] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_less_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_less_eq_subst
thf(fact_1009_ord__less__eq__subst,axiom,
    ! [A: code_integer,B: code_integer,F: code_integer > int,C: int] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_less_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_int @ ( F @ A ) @ C ) ) ) ) ).

% ord_less_eq_subst
thf(fact_1010_ord__less__eq__subst,axiom,
    ! [A: rat,B: rat,F: rat > code_integer,C: code_integer] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ ( F @ A ) @ C ) ) ) ) ).

% ord_less_eq_subst
thf(fact_1011_ord__less__eq__subst,axiom,
    ! [A: rat,B: rat,F: rat > rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ ( F @ A ) @ C ) ) ) ) ).

% ord_less_eq_subst
thf(fact_1012_ord__less__eq__subst,axiom,
    ! [A: rat,B: rat,F: rat > num,C: num] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_less_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_num @ ( F @ A ) @ C ) ) ) ) ).

% ord_less_eq_subst
thf(fact_1013_ord__less__eq__subst,axiom,
    ! [A: rat,B: rat,F: rat > nat,C: nat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_less_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_less_eq_subst
thf(fact_1014_ord__less__eq__subst,axiom,
    ! [A: rat,B: rat,F: rat > int,C: int] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_less_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_int @ ( F @ A ) @ C ) ) ) ) ).

% ord_less_eq_subst
thf(fact_1015_order__less__irrefl,axiom,
    ! [X2: code_integer] :
      ~ ( ord_le6747313008572928689nteger @ X2 @ X2 ) ).

% order_less_irrefl
thf(fact_1016_order__less__irrefl,axiom,
    ! [X2: rat] :
      ~ ( ord_less_rat @ X2 @ X2 ) ).

% order_less_irrefl
thf(fact_1017_order__less__irrefl,axiom,
    ! [X2: num] :
      ~ ( ord_less_num @ X2 @ X2 ) ).

% order_less_irrefl
thf(fact_1018_order__less__irrefl,axiom,
    ! [X2: nat] :
      ~ ( ord_less_nat @ X2 @ X2 ) ).

% order_less_irrefl
thf(fact_1019_order__less__irrefl,axiom,
    ! [X2: int] :
      ~ ( ord_less_int @ X2 @ X2 ) ).

% order_less_irrefl
thf(fact_1020_order__less__subst1,axiom,
    ! [A: code_integer,F: code_integer > code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ ( F @ B ) )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ A @ ( F @ C ) ) ) ) ) ).

% order_less_subst1
thf(fact_1021_order__less__subst1,axiom,
    ! [A: code_integer,F: rat > code_integer,B: rat,C: rat] :
      ( ( ord_le6747313008572928689nteger @ A @ ( F @ B ) )
     => ( ( ord_less_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ A @ ( F @ C ) ) ) ) ) ).

% order_less_subst1
thf(fact_1022_order__less__subst1,axiom,
    ! [A: code_integer,F: num > code_integer,B: num,C: num] :
      ( ( ord_le6747313008572928689nteger @ A @ ( F @ B ) )
     => ( ( ord_less_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_num @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ A @ ( F @ C ) ) ) ) ) ).

% order_less_subst1
thf(fact_1023_order__less__subst1,axiom,
    ! [A: code_integer,F: nat > code_integer,B: nat,C: nat] :
      ( ( ord_le6747313008572928689nteger @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_nat @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ A @ ( F @ C ) ) ) ) ) ).

% order_less_subst1
thf(fact_1024_order__less__subst1,axiom,
    ! [A: code_integer,F: int > code_integer,B: int,C: int] :
      ( ( ord_le6747313008572928689nteger @ A @ ( F @ B ) )
     => ( ( ord_less_int @ B @ C )
       => ( ! [X3: int,Y2: int] :
              ( ( ord_less_int @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ A @ ( F @ C ) ) ) ) ) ).

% order_less_subst1
thf(fact_1025_order__less__subst1,axiom,
    ! [A: rat,F: code_integer > rat,B: code_integer,C: code_integer] :
      ( ( ord_less_rat @ A @ ( F @ B ) )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_subst1
thf(fact_1026_order__less__subst1,axiom,
    ! [A: rat,F: rat > rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ ( F @ B ) )
     => ( ( ord_less_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_subst1
thf(fact_1027_order__less__subst1,axiom,
    ! [A: rat,F: num > rat,B: num,C: num] :
      ( ( ord_less_rat @ A @ ( F @ B ) )
     => ( ( ord_less_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_num @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_subst1
thf(fact_1028_order__less__subst1,axiom,
    ! [A: rat,F: nat > rat,B: nat,C: nat] :
      ( ( ord_less_rat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_nat @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_subst1
thf(fact_1029_order__less__subst1,axiom,
    ! [A: rat,F: int > rat,B: int,C: int] :
      ( ( ord_less_rat @ A @ ( F @ B ) )
     => ( ( ord_less_int @ B @ C )
       => ( ! [X3: int,Y2: int] :
              ( ( ord_less_int @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_subst1
thf(fact_1030_order__less__subst2,axiom,
    ! [A: code_integer,B: code_integer,F: code_integer > code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ ( F @ B ) @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ ( F @ A ) @ C ) ) ) ) ).

% order_less_subst2
thf(fact_1031_order__less__subst2,axiom,
    ! [A: code_integer,B: code_integer,F: code_integer > rat,C: rat] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_less_rat @ ( F @ B ) @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_subst2
thf(fact_1032_order__less__subst2,axiom,
    ! [A: code_integer,B: code_integer,F: code_integer > num,C: num] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_less_num @ ( F @ B ) @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_less_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_num @ ( F @ A ) @ C ) ) ) ) ).

% order_less_subst2
thf(fact_1033_order__less__subst2,axiom,
    ! [A: code_integer,B: code_integer,F: code_integer > nat,C: nat] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_less_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_subst2
thf(fact_1034_order__less__subst2,axiom,
    ! [A: code_integer,B: code_integer,F: code_integer > int,C: int] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_less_int @ ( F @ B ) @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_less_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_int @ ( F @ A ) @ C ) ) ) ) ).

% order_less_subst2
thf(fact_1035_order__less__subst2,axiom,
    ! [A: rat,B: rat,F: rat > code_integer,C: code_integer] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ ( F @ A ) @ C ) ) ) ) ).

% order_less_subst2
thf(fact_1036_order__less__subst2,axiom,
    ! [A: rat,B: rat,F: rat > rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_subst2
thf(fact_1037_order__less__subst2,axiom,
    ! [A: rat,B: rat,F: rat > num,C: num] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_num @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_less_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_num @ ( F @ A ) @ C ) ) ) ) ).

% order_less_subst2
thf(fact_1038_order__less__subst2,axiom,
    ! [A: rat,B: rat,F: rat > nat,C: nat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_less_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_subst2
thf(fact_1039_order__less__subst2,axiom,
    ! [A: rat,B: rat,F: rat > int,C: int] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_int @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_less_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_int @ ( F @ A ) @ C ) ) ) ) ).

% order_less_subst2
thf(fact_1040_order__less__not__sym,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X2 @ Y )
     => ~ ( ord_le6747313008572928689nteger @ Y @ X2 ) ) ).

% order_less_not_sym
thf(fact_1041_order__less__not__sym,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ X2 @ Y )
     => ~ ( ord_less_rat @ Y @ X2 ) ) ).

% order_less_not_sym
thf(fact_1042_order__less__not__sym,axiom,
    ! [X2: num,Y: num] :
      ( ( ord_less_num @ X2 @ Y )
     => ~ ( ord_less_num @ Y @ X2 ) ) ).

% order_less_not_sym
thf(fact_1043_order__less__not__sym,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ~ ( ord_less_nat @ Y @ X2 ) ) ).

% order_less_not_sym
thf(fact_1044_order__less__not__sym,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_int @ X2 @ Y )
     => ~ ( ord_less_int @ Y @ X2 ) ) ).

% order_less_not_sym
thf(fact_1045_order__less__imp__triv,axiom,
    ! [X2: code_integer,Y: code_integer,P: $o] :
      ( ( ord_le6747313008572928689nteger @ X2 @ Y )
     => ( ( ord_le6747313008572928689nteger @ Y @ X2 )
       => P ) ) ).

% order_less_imp_triv
thf(fact_1046_order__less__imp__triv,axiom,
    ! [X2: rat,Y: rat,P: $o] :
      ( ( ord_less_rat @ X2 @ Y )
     => ( ( ord_less_rat @ Y @ X2 )
       => P ) ) ).

% order_less_imp_triv
thf(fact_1047_order__less__imp__triv,axiom,
    ! [X2: num,Y: num,P: $o] :
      ( ( ord_less_num @ X2 @ Y )
     => ( ( ord_less_num @ Y @ X2 )
       => P ) ) ).

% order_less_imp_triv
thf(fact_1048_order__less__imp__triv,axiom,
    ! [X2: nat,Y: nat,P: $o] :
      ( ( ord_less_nat @ X2 @ Y )
     => ( ( ord_less_nat @ Y @ X2 )
       => P ) ) ).

% order_less_imp_triv
thf(fact_1049_order__less__imp__triv,axiom,
    ! [X2: int,Y: int,P: $o] :
      ( ( ord_less_int @ X2 @ Y )
     => ( ( ord_less_int @ Y @ X2 )
       => P ) ) ).

% order_less_imp_triv
thf(fact_1050_linorder__less__linear,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X2 @ Y )
      | ( X2 = Y )
      | ( ord_le6747313008572928689nteger @ Y @ X2 ) ) ).

% linorder_less_linear
thf(fact_1051_linorder__less__linear,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ X2 @ Y )
      | ( X2 = Y )
      | ( ord_less_rat @ Y @ X2 ) ) ).

% linorder_less_linear
thf(fact_1052_linorder__less__linear,axiom,
    ! [X2: num,Y: num] :
      ( ( ord_less_num @ X2 @ Y )
      | ( X2 = Y )
      | ( ord_less_num @ Y @ X2 ) ) ).

% linorder_less_linear
thf(fact_1053_linorder__less__linear,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
      | ( X2 = Y )
      | ( ord_less_nat @ Y @ X2 ) ) ).

% linorder_less_linear
thf(fact_1054_linorder__less__linear,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_int @ X2 @ Y )
      | ( X2 = Y )
      | ( ord_less_int @ Y @ X2 ) ) ).

% linorder_less_linear
thf(fact_1055_order__less__imp__not__eq,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X2 @ Y )
     => ( X2 != Y ) ) ).

% order_less_imp_not_eq
thf(fact_1056_order__less__imp__not__eq,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ X2 @ Y )
     => ( X2 != Y ) ) ).

% order_less_imp_not_eq
thf(fact_1057_order__less__imp__not__eq,axiom,
    ! [X2: num,Y: num] :
      ( ( ord_less_num @ X2 @ Y )
     => ( X2 != Y ) ) ).

% order_less_imp_not_eq
thf(fact_1058_order__less__imp__not__eq,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ( X2 != Y ) ) ).

% order_less_imp_not_eq
thf(fact_1059_order__less__imp__not__eq,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_int @ X2 @ Y )
     => ( X2 != Y ) ) ).

% order_less_imp_not_eq
thf(fact_1060_order__less__imp__not__eq2,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X2 @ Y )
     => ( Y != X2 ) ) ).

% order_less_imp_not_eq2
thf(fact_1061_order__less__imp__not__eq2,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ X2 @ Y )
     => ( Y != X2 ) ) ).

% order_less_imp_not_eq2
thf(fact_1062_order__less__imp__not__eq2,axiom,
    ! [X2: num,Y: num] :
      ( ( ord_less_num @ X2 @ Y )
     => ( Y != X2 ) ) ).

% order_less_imp_not_eq2
thf(fact_1063_order__less__imp__not__eq2,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ( Y != X2 ) ) ).

% order_less_imp_not_eq2
thf(fact_1064_order__less__imp__not__eq2,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_int @ X2 @ Y )
     => ( Y != X2 ) ) ).

% order_less_imp_not_eq2
thf(fact_1065_order__less__imp__not__less,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X2 @ Y )
     => ~ ( ord_le6747313008572928689nteger @ Y @ X2 ) ) ).

% order_less_imp_not_less
thf(fact_1066_order__less__imp__not__less,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ X2 @ Y )
     => ~ ( ord_less_rat @ Y @ X2 ) ) ).

% order_less_imp_not_less
thf(fact_1067_order__less__imp__not__less,axiom,
    ! [X2: num,Y: num] :
      ( ( ord_less_num @ X2 @ Y )
     => ~ ( ord_less_num @ Y @ X2 ) ) ).

% order_less_imp_not_less
thf(fact_1068_order__less__imp__not__less,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ~ ( ord_less_nat @ Y @ X2 ) ) ).

% order_less_imp_not_less
thf(fact_1069_order__less__imp__not__less,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_int @ X2 @ Y )
     => ~ ( ord_less_int @ Y @ X2 ) ) ).

% order_less_imp_not_less
thf(fact_1070_verit__comp__simplify1_I1_J,axiom,
    ! [A: code_integer] :
      ~ ( ord_le6747313008572928689nteger @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_1071_verit__comp__simplify1_I1_J,axiom,
    ! [A: rat] :
      ~ ( ord_less_rat @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_1072_verit__comp__simplify1_I1_J,axiom,
    ! [A: num] :
      ~ ( ord_less_num @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_1073_verit__comp__simplify1_I1_J,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_1074_verit__comp__simplify1_I1_J,axiom,
    ! [A: int] :
      ~ ( ord_less_int @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_1075_floor__less__cancel,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_int @ ( archim3151403230148437115or_rat @ X2 ) @ ( archim3151403230148437115or_rat @ Y ) )
     => ( ord_less_rat @ X2 @ Y ) ) ).

% floor_less_cancel
thf(fact_1076_zless__nat__eq__int__zless,axiom,
    ! [M: nat,Z2: int] :
      ( ( ord_less_nat @ M @ ( nat2 @ Z2 ) )
      = ( ord_less_int @ ( semiri1314217659103216013at_int @ M ) @ Z2 ) ) ).

% zless_nat_eq_int_zless
thf(fact_1077_nat__mono__iff,axiom,
    ! [Z2: int,W2: int] :
      ( ( ord_less_int @ zero_zero_int @ Z2 )
     => ( ( ord_less_nat @ ( nat2 @ W2 ) @ ( nat2 @ Z2 ) )
        = ( ord_less_int @ W2 @ Z2 ) ) ) ).

% nat_mono_iff
thf(fact_1078_power__int__strict__increasing,axiom,
    ! [N: int,N4: int,A: rat] :
      ( ( ord_less_int @ N @ N4 )
     => ( ( ord_less_rat @ one_one_rat @ A )
       => ( ord_less_rat @ ( power_int_rat @ A @ N ) @ ( power_int_rat @ A @ N4 ) ) ) ) ).

% power_int_strict_increasing
thf(fact_1079_zero__less__power__int,axiom,
    ! [X2: rat,N: int] :
      ( ( ord_less_rat @ zero_zero_rat @ X2 )
     => ( ord_less_rat @ zero_zero_rat @ ( power_int_rat @ X2 @ N ) ) ) ).

% zero_less_power_int
thf(fact_1080_less__imp__of__nat__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) ) ).

% less_imp_of_nat_less
thf(fact_1081_less__imp__of__nat__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) ) ) ).

% less_imp_of_nat_less
thf(fact_1082_less__imp__of__nat__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_le6747313008572928689nteger @ ( semiri4939895301339042750nteger @ M ) @ ( semiri4939895301339042750nteger @ N ) ) ) ).

% less_imp_of_nat_less
thf(fact_1083_less__imp__of__nat__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ N ) ) ) ).

% less_imp_of_nat_less
thf(fact_1084_less__imp__of__nat__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_le5570908160329646204atural @ ( semiri3763490453095760265atural @ M ) @ ( semiri3763490453095760265atural @ N ) ) ) ).

% less_imp_of_nat_less
thf(fact_1085_of__nat__less__imp__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_imp_less
thf(fact_1086_of__nat__less__imp__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_imp_less
thf(fact_1087_of__nat__less__imp__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_le6747313008572928689nteger @ ( semiri4939895301339042750nteger @ M ) @ ( semiri4939895301339042750nteger @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_imp_less
thf(fact_1088_of__nat__less__imp__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_imp_less
thf(fact_1089_of__nat__less__imp__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_le5570908160329646204atural @ ( semiri3763490453095760265atural @ M ) @ ( semiri3763490453095760265atural @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% of_nat_less_imp_less
thf(fact_1090_nat__int__comparison_I2_J,axiom,
    ( ord_less_nat
    = ( ^ [A2: nat,B2: nat] : ( ord_less_int @ ( semiri1314217659103216013at_int @ A2 ) @ ( semiri1314217659103216013at_int @ B2 ) ) ) ) ).

% nat_int_comparison(2)
thf(fact_1091_power__int__strict__decreasing,axiom,
    ! [N: int,N4: int,A: rat] :
      ( ( ord_less_int @ N @ N4 )
     => ( ( ord_less_rat @ zero_zero_rat @ A )
       => ( ( ord_less_rat @ A @ one_one_rat )
         => ( ord_less_rat @ ( power_int_rat @ A @ N4 ) @ ( power_int_rat @ A @ N ) ) ) ) ) ).

% power_int_strict_decreasing
thf(fact_1092_power__int__strict__antimono,axiom,
    ! [A: rat,B: rat,N: int] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ zero_zero_rat @ A )
       => ( ( ord_less_int @ N @ zero_zero_int )
         => ( ord_less_rat @ ( power_int_rat @ B @ N ) @ ( power_int_rat @ A @ N ) ) ) ) ) ).

% power_int_strict_antimono
thf(fact_1093_ceiling__less__cancel,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_int @ ( archim2889992004027027881ng_rat @ X2 ) @ ( archim2889992004027027881ng_rat @ Y ) )
     => ( ord_less_rat @ X2 @ Y ) ) ).

% ceiling_less_cancel
thf(fact_1094_one__less__power__int,axiom,
    ! [A: rat,N: int] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ( ord_less_int @ zero_zero_int @ N )
       => ( ord_less_rat @ one_one_rat @ ( power_int_rat @ A @ N ) ) ) ) ).

% one_less_power_int
thf(fact_1095_nat__less__eq__zless,axiom,
    ! [W2: int,Z2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ W2 )
     => ( ( ord_less_nat @ ( nat2 @ W2 ) @ ( nat2 @ Z2 ) )
        = ( ord_less_int @ W2 @ Z2 ) ) ) ).

% nat_less_eq_zless
thf(fact_1096_nat__less__as__int,axiom,
    ( ord_less_nat
    = ( ^ [A2: nat,B2: nat] : ( ord_less_int @ ( semiri1314217659103216013at_int @ A2 ) @ ( semiri1314217659103216013at_int @ B2 ) ) ) ) ).

% nat_less_as_int
thf(fact_1097_power__int__antimono,axiom,
    ! [A: rat,B: rat,N: int] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_rat @ zero_zero_rat @ A )
       => ( ( ord_less_int @ N @ zero_zero_int )
         => ( ord_less_eq_rat @ ( power_int_rat @ B @ N ) @ ( power_int_rat @ A @ N ) ) ) ) ) ).

% power_int_antimono
thf(fact_1098_power__int__strict__mono,axiom,
    ! [A: rat,B: rat,N: int] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ( ord_less_int @ zero_zero_int @ N )
         => ( ord_less_rat @ ( power_int_rat @ A @ N ) @ ( power_int_rat @ B @ N ) ) ) ) ) ).

% power_int_strict_mono
thf(fact_1099_power__int__le__imp__less__exp,axiom,
    ! [X2: rat,M: int,N: int] :
      ( ( ord_less_rat @ one_one_rat @ X2 )
     => ( ( ord_less_rat @ ( power_int_rat @ X2 @ M ) @ ( power_int_rat @ X2 @ N ) )
       => ( ( ord_less_eq_int @ zero_zero_int @ N )
         => ( ord_less_int @ M @ N ) ) ) ) ).

% power_int_le_imp_less_exp
thf(fact_1100_nat__less__iff,axiom,
    ! [W2: int,M: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ W2 )
     => ( ( ord_less_nat @ ( nat2 @ W2 ) @ M )
        = ( ord_less_int @ W2 @ ( semiri1314217659103216013at_int @ M ) ) ) ) ).

% nat_less_iff
thf(fact_1101_less__ceiling__iff,axiom,
    ! [Z2: int,X2: rat] :
      ( ( ord_less_int @ Z2 @ ( archim2889992004027027881ng_rat @ X2 ) )
      = ( ord_less_rat @ ( ring_1_of_int_rat @ Z2 ) @ X2 ) ) ).

% less_ceiling_iff
thf(fact_1102_verit__comp__simplify1_I3_J,axiom,
    ! [B5: code_integer,A5: code_integer] :
      ( ( ~ ( ord_le3102999989581377725nteger @ B5 @ A5 ) )
      = ( ord_le6747313008572928689nteger @ A5 @ B5 ) ) ).

% verit_comp_simplify1(3)
thf(fact_1103_verit__comp__simplify1_I3_J,axiom,
    ! [B5: rat,A5: rat] :
      ( ( ~ ( ord_less_eq_rat @ B5 @ A5 ) )
      = ( ord_less_rat @ A5 @ B5 ) ) ).

% verit_comp_simplify1(3)
thf(fact_1104_verit__comp__simplify1_I3_J,axiom,
    ! [B5: num,A5: num] :
      ( ( ~ ( ord_less_eq_num @ B5 @ A5 ) )
      = ( ord_less_num @ A5 @ B5 ) ) ).

% verit_comp_simplify1(3)
thf(fact_1105_verit__comp__simplify1_I3_J,axiom,
    ! [B5: nat,A5: nat] :
      ( ( ~ ( ord_less_eq_nat @ B5 @ A5 ) )
      = ( ord_less_nat @ A5 @ B5 ) ) ).

% verit_comp_simplify1(3)
thf(fact_1106_verit__comp__simplify1_I3_J,axiom,
    ! [B5: int,A5: int] :
      ( ( ~ ( ord_less_eq_int @ B5 @ A5 ) )
      = ( ord_less_int @ A5 @ B5 ) ) ).

% verit_comp_simplify1(3)
thf(fact_1107_leD,axiom,
    ! [Y: code_integer,X2: code_integer] :
      ( ( ord_le3102999989581377725nteger @ Y @ X2 )
     => ~ ( ord_le6747313008572928689nteger @ X2 @ Y ) ) ).

% leD
thf(fact_1108_leD,axiom,
    ! [Y: set_nat,X2: set_nat] :
      ( ( ord_less_eq_set_nat @ Y @ X2 )
     => ~ ( ord_less_set_nat @ X2 @ Y ) ) ).

% leD
thf(fact_1109_leD,axiom,
    ! [Y: rat,X2: rat] :
      ( ( ord_less_eq_rat @ Y @ X2 )
     => ~ ( ord_less_rat @ X2 @ Y ) ) ).

% leD
thf(fact_1110_leD,axiom,
    ! [Y: num,X2: num] :
      ( ( ord_less_eq_num @ Y @ X2 )
     => ~ ( ord_less_num @ X2 @ Y ) ) ).

% leD
thf(fact_1111_leD,axiom,
    ! [Y: nat,X2: nat] :
      ( ( ord_less_eq_nat @ Y @ X2 )
     => ~ ( ord_less_nat @ X2 @ Y ) ) ).

% leD
thf(fact_1112_leD,axiom,
    ! [Y: int,X2: int] :
      ( ( ord_less_eq_int @ Y @ X2 )
     => ~ ( ord_less_int @ X2 @ Y ) ) ).

% leD
thf(fact_1113_leI,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ~ ( ord_le6747313008572928689nteger @ X2 @ Y )
     => ( ord_le3102999989581377725nteger @ Y @ X2 ) ) ).

% leI
thf(fact_1114_leI,axiom,
    ! [X2: rat,Y: rat] :
      ( ~ ( ord_less_rat @ X2 @ Y )
     => ( ord_less_eq_rat @ Y @ X2 ) ) ).

% leI
thf(fact_1115_leI,axiom,
    ! [X2: num,Y: num] :
      ( ~ ( ord_less_num @ X2 @ Y )
     => ( ord_less_eq_num @ Y @ X2 ) ) ).

% leI
thf(fact_1116_leI,axiom,
    ! [X2: nat,Y: nat] :
      ( ~ ( ord_less_nat @ X2 @ Y )
     => ( ord_less_eq_nat @ Y @ X2 ) ) ).

% leI
thf(fact_1117_leI,axiom,
    ! [X2: int,Y: int] :
      ( ~ ( ord_less_int @ X2 @ Y )
     => ( ord_less_eq_int @ Y @ X2 ) ) ).

% leI
thf(fact_1118_nless__le,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ~ ( ord_le6747313008572928689nteger @ A @ B ) )
      = ( ~ ( ord_le3102999989581377725nteger @ A @ B )
        | ( A = B ) ) ) ).

% nless_le
thf(fact_1119_nless__le,axiom,
    ! [A: set_nat,B: set_nat] :
      ( ( ~ ( ord_less_set_nat @ A @ B ) )
      = ( ~ ( ord_less_eq_set_nat @ A @ B )
        | ( A = B ) ) ) ).

% nless_le
thf(fact_1120_nless__le,axiom,
    ! [A: rat,B: rat] :
      ( ( ~ ( ord_less_rat @ A @ B ) )
      = ( ~ ( ord_less_eq_rat @ A @ B )
        | ( A = B ) ) ) ).

% nless_le
thf(fact_1121_nless__le,axiom,
    ! [A: num,B: num] :
      ( ( ~ ( ord_less_num @ A @ B ) )
      = ( ~ ( ord_less_eq_num @ A @ B )
        | ( A = B ) ) ) ).

% nless_le
thf(fact_1122_nless__le,axiom,
    ! [A: nat,B: nat] :
      ( ( ~ ( ord_less_nat @ A @ B ) )
      = ( ~ ( ord_less_eq_nat @ A @ B )
        | ( A = B ) ) ) ).

% nless_le
thf(fact_1123_nless__le,axiom,
    ! [A: int,B: int] :
      ( ( ~ ( ord_less_int @ A @ B ) )
      = ( ~ ( ord_less_eq_int @ A @ B )
        | ( A = B ) ) ) ).

% nless_le
thf(fact_1124_antisym__conv1,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ~ ( ord_le6747313008572928689nteger @ X2 @ Y )
     => ( ( ord_le3102999989581377725nteger @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

% antisym_conv1
thf(fact_1125_antisym__conv1,axiom,
    ! [X2: set_nat,Y: set_nat] :
      ( ~ ( ord_less_set_nat @ X2 @ Y )
     => ( ( ord_less_eq_set_nat @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

% antisym_conv1
thf(fact_1126_antisym__conv1,axiom,
    ! [X2: rat,Y: rat] :
      ( ~ ( ord_less_rat @ X2 @ Y )
     => ( ( ord_less_eq_rat @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

% antisym_conv1
thf(fact_1127_antisym__conv1,axiom,
    ! [X2: num,Y: num] :
      ( ~ ( ord_less_num @ X2 @ Y )
     => ( ( ord_less_eq_num @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

% antisym_conv1
thf(fact_1128_antisym__conv1,axiom,
    ! [X2: nat,Y: nat] :
      ( ~ ( ord_less_nat @ X2 @ Y )
     => ( ( ord_less_eq_nat @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

% antisym_conv1
thf(fact_1129_antisym__conv1,axiom,
    ! [X2: int,Y: int] :
      ( ~ ( ord_less_int @ X2 @ Y )
     => ( ( ord_less_eq_int @ X2 @ Y )
        = ( X2 = Y ) ) ) ).

% antisym_conv1
thf(fact_1130_antisym__conv2,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le3102999989581377725nteger @ X2 @ Y )
     => ( ( ~ ( ord_le6747313008572928689nteger @ X2 @ Y ) )
        = ( X2 = Y ) ) ) ).

% antisym_conv2
thf(fact_1131_antisym__conv2,axiom,
    ! [X2: set_nat,Y: set_nat] :
      ( ( ord_less_eq_set_nat @ X2 @ Y )
     => ( ( ~ ( ord_less_set_nat @ X2 @ Y ) )
        = ( X2 = Y ) ) ) ).

% antisym_conv2
thf(fact_1132_antisym__conv2,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ X2 @ Y )
     => ( ( ~ ( ord_less_rat @ X2 @ Y ) )
        = ( X2 = Y ) ) ) ).

% antisym_conv2
thf(fact_1133_antisym__conv2,axiom,
    ! [X2: num,Y: num] :
      ( ( ord_less_eq_num @ X2 @ Y )
     => ( ( ~ ( ord_less_num @ X2 @ Y ) )
        = ( X2 = Y ) ) ) ).

% antisym_conv2
thf(fact_1134_antisym__conv2,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X2 @ Y )
     => ( ( ~ ( ord_less_nat @ X2 @ Y ) )
        = ( X2 = Y ) ) ) ).

% antisym_conv2
thf(fact_1135_antisym__conv2,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ X2 @ Y )
     => ( ( ~ ( ord_less_int @ X2 @ Y ) )
        = ( X2 = Y ) ) ) ).

% antisym_conv2
thf(fact_1136_dense__ge,axiom,
    ! [Z2: rat,Y: rat] :
      ( ! [X3: rat] :
          ( ( ord_less_rat @ Z2 @ X3 )
         => ( ord_less_eq_rat @ Y @ X3 ) )
     => ( ord_less_eq_rat @ Y @ Z2 ) ) ).

% dense_ge
thf(fact_1137_dense__le,axiom,
    ! [Y: rat,Z2: rat] :
      ( ! [X3: rat] :
          ( ( ord_less_rat @ X3 @ Y )
         => ( ord_less_eq_rat @ X3 @ Z2 ) )
     => ( ord_less_eq_rat @ Y @ Z2 ) ) ).

% dense_le
thf(fact_1138_less__le__not__le,axiom,
    ( ord_le6747313008572928689nteger
    = ( ^ [X: code_integer,Y4: code_integer] :
          ( ( ord_le3102999989581377725nteger @ X @ Y4 )
          & ~ ( ord_le3102999989581377725nteger @ Y4 @ X ) ) ) ) ).

% less_le_not_le
thf(fact_1139_less__le__not__le,axiom,
    ( ord_less_set_nat
    = ( ^ [X: set_nat,Y4: set_nat] :
          ( ( ord_less_eq_set_nat @ X @ Y4 )
          & ~ ( ord_less_eq_set_nat @ Y4 @ X ) ) ) ) ).

% less_le_not_le
thf(fact_1140_less__le__not__le,axiom,
    ( ord_less_rat
    = ( ^ [X: rat,Y4: rat] :
          ( ( ord_less_eq_rat @ X @ Y4 )
          & ~ ( ord_less_eq_rat @ Y4 @ X ) ) ) ) ).

% less_le_not_le
thf(fact_1141_less__le__not__le,axiom,
    ( ord_less_num
    = ( ^ [X: num,Y4: num] :
          ( ( ord_less_eq_num @ X @ Y4 )
          & ~ ( ord_less_eq_num @ Y4 @ X ) ) ) ) ).

% less_le_not_le
thf(fact_1142_less__le__not__le,axiom,
    ( ord_less_nat
    = ( ^ [X: nat,Y4: nat] :
          ( ( ord_less_eq_nat @ X @ Y4 )
          & ~ ( ord_less_eq_nat @ Y4 @ X ) ) ) ) ).

% less_le_not_le
thf(fact_1143_less__le__not__le,axiom,
    ( ord_less_int
    = ( ^ [X: int,Y4: int] :
          ( ( ord_less_eq_int @ X @ Y4 )
          & ~ ( ord_less_eq_int @ Y4 @ X ) ) ) ) ).

% less_le_not_le
thf(fact_1144_not__le__imp__less,axiom,
    ! [Y: code_integer,X2: code_integer] :
      ( ~ ( ord_le3102999989581377725nteger @ Y @ X2 )
     => ( ord_le6747313008572928689nteger @ X2 @ Y ) ) ).

% not_le_imp_less
thf(fact_1145_not__le__imp__less,axiom,
    ! [Y: rat,X2: rat] :
      ( ~ ( ord_less_eq_rat @ Y @ X2 )
     => ( ord_less_rat @ X2 @ Y ) ) ).

% not_le_imp_less
thf(fact_1146_not__le__imp__less,axiom,
    ! [Y: num,X2: num] :
      ( ~ ( ord_less_eq_num @ Y @ X2 )
     => ( ord_less_num @ X2 @ Y ) ) ).

% not_le_imp_less
thf(fact_1147_not__le__imp__less,axiom,
    ! [Y: nat,X2: nat] :
      ( ~ ( ord_less_eq_nat @ Y @ X2 )
     => ( ord_less_nat @ X2 @ Y ) ) ).

% not_le_imp_less
thf(fact_1148_not__le__imp__less,axiom,
    ! [Y: int,X2: int] :
      ( ~ ( ord_less_eq_int @ Y @ X2 )
     => ( ord_less_int @ X2 @ Y ) ) ).

% not_le_imp_less
thf(fact_1149_order_Oorder__iff__strict,axiom,
    ( ord_le3102999989581377725nteger
    = ( ^ [A2: code_integer,B2: code_integer] :
          ( ( ord_le6747313008572928689nteger @ A2 @ B2 )
          | ( A2 = B2 ) ) ) ) ).

% order.order_iff_strict
thf(fact_1150_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [A2: set_nat,B2: set_nat] :
          ( ( ord_less_set_nat @ A2 @ B2 )
          | ( A2 = B2 ) ) ) ) ).

% order.order_iff_strict
thf(fact_1151_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_rat
    = ( ^ [A2: rat,B2: rat] :
          ( ( ord_less_rat @ A2 @ B2 )
          | ( A2 = B2 ) ) ) ) ).

% order.order_iff_strict
thf(fact_1152_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_num
    = ( ^ [A2: num,B2: num] :
          ( ( ord_less_num @ A2 @ B2 )
          | ( A2 = B2 ) ) ) ) ).

% order.order_iff_strict
thf(fact_1153_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [A2: nat,B2: nat] :
          ( ( ord_less_nat @ A2 @ B2 )
          | ( A2 = B2 ) ) ) ) ).

% order.order_iff_strict
thf(fact_1154_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_int
    = ( ^ [A2: int,B2: int] :
          ( ( ord_less_int @ A2 @ B2 )
          | ( A2 = B2 ) ) ) ) ).

% order.order_iff_strict
thf(fact_1155_order_Ostrict__iff__order,axiom,
    ( ord_le6747313008572928689nteger
    = ( ^ [A2: code_integer,B2: code_integer] :
          ( ( ord_le3102999989581377725nteger @ A2 @ B2 )
          & ( A2 != B2 ) ) ) ) ).

% order.strict_iff_order
thf(fact_1156_order_Ostrict__iff__order,axiom,
    ( ord_less_set_nat
    = ( ^ [A2: set_nat,B2: set_nat] :
          ( ( ord_less_eq_set_nat @ A2 @ B2 )
          & ( A2 != B2 ) ) ) ) ).

% order.strict_iff_order
thf(fact_1157_order_Ostrict__iff__order,axiom,
    ( ord_less_rat
    = ( ^ [A2: rat,B2: rat] :
          ( ( ord_less_eq_rat @ A2 @ B2 )
          & ( A2 != B2 ) ) ) ) ).

% order.strict_iff_order
thf(fact_1158_order_Ostrict__iff__order,axiom,
    ( ord_less_num
    = ( ^ [A2: num,B2: num] :
          ( ( ord_less_eq_num @ A2 @ B2 )
          & ( A2 != B2 ) ) ) ) ).

% order.strict_iff_order
thf(fact_1159_order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [A2: nat,B2: nat] :
          ( ( ord_less_eq_nat @ A2 @ B2 )
          & ( A2 != B2 ) ) ) ) ).

% order.strict_iff_order
thf(fact_1160_order_Ostrict__iff__order,axiom,
    ( ord_less_int
    = ( ^ [A2: int,B2: int] :
          ( ( ord_less_eq_int @ A2 @ B2 )
          & ( A2 != B2 ) ) ) ) ).

% order.strict_iff_order
thf(fact_1161_order_Ostrict__trans1,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ord_le6747313008572928689nteger @ A @ C ) ) ) ).

% order.strict_trans1
thf(fact_1162_order_Ostrict__trans1,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_set_nat @ B @ C )
       => ( ord_less_set_nat @ A @ C ) ) ) ).

% order.strict_trans1
thf(fact_1163_order_Ostrict__trans1,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_rat @ B @ C )
       => ( ord_less_rat @ A @ C ) ) ) ).

% order.strict_trans1
thf(fact_1164_order_Ostrict__trans1,axiom,
    ! [A: num,B: num,C: num] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ord_less_num @ B @ C )
       => ( ord_less_num @ A @ C ) ) ) ).

% order.strict_trans1
thf(fact_1165_order_Ostrict__trans1,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% order.strict_trans1
thf(fact_1166_order_Ostrict__trans1,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_int @ B @ C )
       => ( ord_less_int @ A @ C ) ) ) ).

% order.strict_trans1
thf(fact_1167_order_Ostrict__trans2,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ B @ C )
       => ( ord_le6747313008572928689nteger @ A @ C ) ) ) ).

% order.strict_trans2
thf(fact_1168_order_Ostrict__trans2,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_set_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ord_less_set_nat @ A @ C ) ) ) ).

% order.strict_trans2
thf(fact_1169_order_Ostrict__trans2,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ord_less_rat @ A @ C ) ) ) ).

% order.strict_trans2
thf(fact_1170_order_Ostrict__trans2,axiom,
    ! [A: num,B: num,C: num] :
      ( ( ord_less_num @ A @ B )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ord_less_num @ A @ C ) ) ) ).

% order.strict_trans2
thf(fact_1171_order_Ostrict__trans2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% order.strict_trans2
thf(fact_1172_order_Ostrict__trans2,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_eq_int @ B @ C )
       => ( ord_less_int @ A @ C ) ) ) ).

% order.strict_trans2
thf(fact_1173_order_Ostrict__iff__not,axiom,
    ( ord_le6747313008572928689nteger
    = ( ^ [A2: code_integer,B2: code_integer] :
          ( ( ord_le3102999989581377725nteger @ A2 @ B2 )
          & ~ ( ord_le3102999989581377725nteger @ B2 @ A2 ) ) ) ) ).

% order.strict_iff_not
thf(fact_1174_order_Ostrict__iff__not,axiom,
    ( ord_less_set_nat
    = ( ^ [A2: set_nat,B2: set_nat] :
          ( ( ord_less_eq_set_nat @ A2 @ B2 )
          & ~ ( ord_less_eq_set_nat @ B2 @ A2 ) ) ) ) ).

% order.strict_iff_not
thf(fact_1175_order_Ostrict__iff__not,axiom,
    ( ord_less_rat
    = ( ^ [A2: rat,B2: rat] :
          ( ( ord_less_eq_rat @ A2 @ B2 )
          & ~ ( ord_less_eq_rat @ B2 @ A2 ) ) ) ) ).

% order.strict_iff_not
thf(fact_1176_order_Ostrict__iff__not,axiom,
    ( ord_less_num
    = ( ^ [A2: num,B2: num] :
          ( ( ord_less_eq_num @ A2 @ B2 )
          & ~ ( ord_less_eq_num @ B2 @ A2 ) ) ) ) ).

% order.strict_iff_not
thf(fact_1177_order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [A2: nat,B2: nat] :
          ( ( ord_less_eq_nat @ A2 @ B2 )
          & ~ ( ord_less_eq_nat @ B2 @ A2 ) ) ) ) ).

% order.strict_iff_not
thf(fact_1178_order_Ostrict__iff__not,axiom,
    ( ord_less_int
    = ( ^ [A2: int,B2: int] :
          ( ( ord_less_eq_int @ A2 @ B2 )
          & ~ ( ord_less_eq_int @ B2 @ A2 ) ) ) ) ).

% order.strict_iff_not
thf(fact_1179_dense__ge__bounded,axiom,
    ! [Z2: rat,X2: rat,Y: rat] :
      ( ( ord_less_rat @ Z2 @ X2 )
     => ( ! [W3: rat] :
            ( ( ord_less_rat @ Z2 @ W3 )
           => ( ( ord_less_rat @ W3 @ X2 )
             => ( ord_less_eq_rat @ Y @ W3 ) ) )
       => ( ord_less_eq_rat @ Y @ Z2 ) ) ) ).

% dense_ge_bounded
thf(fact_1180_dense__le__bounded,axiom,
    ! [X2: rat,Y: rat,Z2: rat] :
      ( ( ord_less_rat @ X2 @ Y )
     => ( ! [W3: rat] :
            ( ( ord_less_rat @ X2 @ W3 )
           => ( ( ord_less_rat @ W3 @ Y )
             => ( ord_less_eq_rat @ W3 @ Z2 ) ) )
       => ( ord_less_eq_rat @ Y @ Z2 ) ) ) ).

% dense_le_bounded
thf(fact_1181_dual__order_Oorder__iff__strict,axiom,
    ( ord_le3102999989581377725nteger
    = ( ^ [B2: code_integer,A2: code_integer] :
          ( ( ord_le6747313008572928689nteger @ B2 @ A2 )
          | ( A2 = B2 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_1182_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [B2: set_nat,A2: set_nat] :
          ( ( ord_less_set_nat @ B2 @ A2 )
          | ( A2 = B2 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_1183_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_rat
    = ( ^ [B2: rat,A2: rat] :
          ( ( ord_less_rat @ B2 @ A2 )
          | ( A2 = B2 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_1184_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_num
    = ( ^ [B2: num,A2: num] :
          ( ( ord_less_num @ B2 @ A2 )
          | ( A2 = B2 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_1185_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [B2: nat,A2: nat] :
          ( ( ord_less_nat @ B2 @ A2 )
          | ( A2 = B2 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_1186_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_int
    = ( ^ [B2: int,A2: int] :
          ( ( ord_less_int @ B2 @ A2 )
          | ( A2 = B2 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_1187_dual__order_Ostrict__iff__order,axiom,
    ( ord_le6747313008572928689nteger
    = ( ^ [B2: code_integer,A2: code_integer] :
          ( ( ord_le3102999989581377725nteger @ B2 @ A2 )
          & ( A2 != B2 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_1188_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_set_nat
    = ( ^ [B2: set_nat,A2: set_nat] :
          ( ( ord_less_eq_set_nat @ B2 @ A2 )
          & ( A2 != B2 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_1189_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_rat
    = ( ^ [B2: rat,A2: rat] :
          ( ( ord_less_eq_rat @ B2 @ A2 )
          & ( A2 != B2 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_1190_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_num
    = ( ^ [B2: num,A2: num] :
          ( ( ord_less_eq_num @ B2 @ A2 )
          & ( A2 != B2 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_1191_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [B2: nat,A2: nat] :
          ( ( ord_less_eq_nat @ B2 @ A2 )
          & ( A2 != B2 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_1192_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_int
    = ( ^ [B2: int,A2: int] :
          ( ( ord_less_eq_int @ B2 @ A2 )
          & ( A2 != B2 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_1193_dual__order_Ostrict__trans1,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ B @ A )
     => ( ( ord_le6747313008572928689nteger @ C @ B )
       => ( ord_le6747313008572928689nteger @ C @ A ) ) ) ).

% dual_order.strict_trans1
thf(fact_1194_dual__order_Ostrict__trans1,axiom,
    ! [B: set_nat,A: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ B @ A )
     => ( ( ord_less_set_nat @ C @ B )
       => ( ord_less_set_nat @ C @ A ) ) ) ).

% dual_order.strict_trans1
thf(fact_1195_dual__order_Ostrict__trans1,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_eq_rat @ B @ A )
     => ( ( ord_less_rat @ C @ B )
       => ( ord_less_rat @ C @ A ) ) ) ).

% dual_order.strict_trans1
thf(fact_1196_dual__order_Ostrict__trans1,axiom,
    ! [B: num,A: num,C: num] :
      ( ( ord_less_eq_num @ B @ A )
     => ( ( ord_less_num @ C @ B )
       => ( ord_less_num @ C @ A ) ) ) ).

% dual_order.strict_trans1
thf(fact_1197_dual__order_Ostrict__trans1,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( ord_less_nat @ C @ B )
       => ( ord_less_nat @ C @ A ) ) ) ).

% dual_order.strict_trans1
thf(fact_1198_dual__order_Ostrict__trans1,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ( ord_less_int @ C @ B )
       => ( ord_less_int @ C @ A ) ) ) ).

% dual_order.strict_trans1
thf(fact_1199_dual__order_Ostrict__trans2,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ B @ A )
     => ( ( ord_le3102999989581377725nteger @ C @ B )
       => ( ord_le6747313008572928689nteger @ C @ A ) ) ) ).

% dual_order.strict_trans2
thf(fact_1200_dual__order_Ostrict__trans2,axiom,
    ! [B: set_nat,A: set_nat,C: set_nat] :
      ( ( ord_less_set_nat @ B @ A )
     => ( ( ord_less_eq_set_nat @ C @ B )
       => ( ord_less_set_nat @ C @ A ) ) ) ).

% dual_order.strict_trans2
thf(fact_1201_dual__order_Ostrict__trans2,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_rat @ B @ A )
     => ( ( ord_less_eq_rat @ C @ B )
       => ( ord_less_rat @ C @ A ) ) ) ).

% dual_order.strict_trans2
thf(fact_1202_dual__order_Ostrict__trans2,axiom,
    ! [B: num,A: num,C: num] :
      ( ( ord_less_num @ B @ A )
     => ( ( ord_less_eq_num @ C @ B )
       => ( ord_less_num @ C @ A ) ) ) ).

% dual_order.strict_trans2
thf(fact_1203_dual__order_Ostrict__trans2,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ord_less_nat @ B @ A )
     => ( ( ord_less_eq_nat @ C @ B )
       => ( ord_less_nat @ C @ A ) ) ) ).

% dual_order.strict_trans2
thf(fact_1204_dual__order_Ostrict__trans2,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_int @ B @ A )
     => ( ( ord_less_eq_int @ C @ B )
       => ( ord_less_int @ C @ A ) ) ) ).

% dual_order.strict_trans2
thf(fact_1205_dual__order_Ostrict__iff__not,axiom,
    ( ord_le6747313008572928689nteger
    = ( ^ [B2: code_integer,A2: code_integer] :
          ( ( ord_le3102999989581377725nteger @ B2 @ A2 )
          & ~ ( ord_le3102999989581377725nteger @ A2 @ B2 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_1206_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_set_nat
    = ( ^ [B2: set_nat,A2: set_nat] :
          ( ( ord_less_eq_set_nat @ B2 @ A2 )
          & ~ ( ord_less_eq_set_nat @ A2 @ B2 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_1207_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_rat
    = ( ^ [B2: rat,A2: rat] :
          ( ( ord_less_eq_rat @ B2 @ A2 )
          & ~ ( ord_less_eq_rat @ A2 @ B2 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_1208_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_num
    = ( ^ [B2: num,A2: num] :
          ( ( ord_less_eq_num @ B2 @ A2 )
          & ~ ( ord_less_eq_num @ A2 @ B2 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_1209_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [B2: nat,A2: nat] :
          ( ( ord_less_eq_nat @ B2 @ A2 )
          & ~ ( ord_less_eq_nat @ A2 @ B2 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_1210_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_int
    = ( ^ [B2: int,A2: int] :
          ( ( ord_less_eq_int @ B2 @ A2 )
          & ~ ( ord_less_eq_int @ A2 @ B2 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_1211_order_Ostrict__implies__order,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ord_le3102999989581377725nteger @ A @ B ) ) ).

% order.strict_implies_order
thf(fact_1212_order_Ostrict__implies__order,axiom,
    ! [A: set_nat,B: set_nat] :
      ( ( ord_less_set_nat @ A @ B )
     => ( ord_less_eq_set_nat @ A @ B ) ) ).

% order.strict_implies_order
thf(fact_1213_order_Ostrict__implies__order,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ord_less_eq_rat @ A @ B ) ) ).

% order.strict_implies_order
thf(fact_1214_order_Ostrict__implies__order,axiom,
    ! [A: num,B: num] :
      ( ( ord_less_num @ A @ B )
     => ( ord_less_eq_num @ A @ B ) ) ).

% order.strict_implies_order
thf(fact_1215_order_Ostrict__implies__order,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_eq_nat @ A @ B ) ) ).

% order.strict_implies_order
thf(fact_1216_order_Ostrict__implies__order,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_eq_int @ A @ B ) ) ).

% order.strict_implies_order
thf(fact_1217_dual__order_Ostrict__implies__order,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ B @ A )
     => ( ord_le3102999989581377725nteger @ B @ A ) ) ).

% dual_order.strict_implies_order
thf(fact_1218_dual__order_Ostrict__implies__order,axiom,
    ! [B: set_nat,A: set_nat] :
      ( ( ord_less_set_nat @ B @ A )
     => ( ord_less_eq_set_nat @ B @ A ) ) ).

% dual_order.strict_implies_order
thf(fact_1219_dual__order_Ostrict__implies__order,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_rat @ B @ A )
     => ( ord_less_eq_rat @ B @ A ) ) ).

% dual_order.strict_implies_order
thf(fact_1220_dual__order_Ostrict__implies__order,axiom,
    ! [B: num,A: num] :
      ( ( ord_less_num @ B @ A )
     => ( ord_less_eq_num @ B @ A ) ) ).

% dual_order.strict_implies_order
thf(fact_1221_dual__order_Ostrict__implies__order,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ B @ A )
     => ( ord_less_eq_nat @ B @ A ) ) ).

% dual_order.strict_implies_order
thf(fact_1222_dual__order_Ostrict__implies__order,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ B @ A )
     => ( ord_less_eq_int @ B @ A ) ) ).

% dual_order.strict_implies_order
thf(fact_1223_order__le__less,axiom,
    ( ord_le3102999989581377725nteger
    = ( ^ [X: code_integer,Y4: code_integer] :
          ( ( ord_le6747313008572928689nteger @ X @ Y4 )
          | ( X = Y4 ) ) ) ) ).

% order_le_less
thf(fact_1224_order__le__less,axiom,
    ( ord_less_eq_set_nat
    = ( ^ [X: set_nat,Y4: set_nat] :
          ( ( ord_less_set_nat @ X @ Y4 )
          | ( X = Y4 ) ) ) ) ).

% order_le_less
thf(fact_1225_order__le__less,axiom,
    ( ord_less_eq_rat
    = ( ^ [X: rat,Y4: rat] :
          ( ( ord_less_rat @ X @ Y4 )
          | ( X = Y4 ) ) ) ) ).

% order_le_less
thf(fact_1226_order__le__less,axiom,
    ( ord_less_eq_num
    = ( ^ [X: num,Y4: num] :
          ( ( ord_less_num @ X @ Y4 )
          | ( X = Y4 ) ) ) ) ).

% order_le_less
thf(fact_1227_order__le__less,axiom,
    ( ord_less_eq_nat
    = ( ^ [X: nat,Y4: nat] :
          ( ( ord_less_nat @ X @ Y4 )
          | ( X = Y4 ) ) ) ) ).

% order_le_less
thf(fact_1228_order__le__less,axiom,
    ( ord_less_eq_int
    = ( ^ [X: int,Y4: int] :
          ( ( ord_less_int @ X @ Y4 )
          | ( X = Y4 ) ) ) ) ).

% order_le_less
thf(fact_1229_order__less__le,axiom,
    ( ord_le6747313008572928689nteger
    = ( ^ [X: code_integer,Y4: code_integer] :
          ( ( ord_le3102999989581377725nteger @ X @ Y4 )
          & ( X != Y4 ) ) ) ) ).

% order_less_le
thf(fact_1230_order__less__le,axiom,
    ( ord_less_set_nat
    = ( ^ [X: set_nat,Y4: set_nat] :
          ( ( ord_less_eq_set_nat @ X @ Y4 )
          & ( X != Y4 ) ) ) ) ).

% order_less_le
thf(fact_1231_order__less__le,axiom,
    ( ord_less_rat
    = ( ^ [X: rat,Y4: rat] :
          ( ( ord_less_eq_rat @ X @ Y4 )
          & ( X != Y4 ) ) ) ) ).

% order_less_le
thf(fact_1232_order__less__le,axiom,
    ( ord_less_num
    = ( ^ [X: num,Y4: num] :
          ( ( ord_less_eq_num @ X @ Y4 )
          & ( X != Y4 ) ) ) ) ).

% order_less_le
thf(fact_1233_order__less__le,axiom,
    ( ord_less_nat
    = ( ^ [X: nat,Y4: nat] :
          ( ( ord_less_eq_nat @ X @ Y4 )
          & ( X != Y4 ) ) ) ) ).

% order_less_le
thf(fact_1234_order__less__le,axiom,
    ( ord_less_int
    = ( ^ [X: int,Y4: int] :
          ( ( ord_less_eq_int @ X @ Y4 )
          & ( X != Y4 ) ) ) ) ).

% order_less_le
thf(fact_1235_linorder__not__le,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ~ ( ord_le3102999989581377725nteger @ X2 @ Y ) )
      = ( ord_le6747313008572928689nteger @ Y @ X2 ) ) ).

% linorder_not_le
thf(fact_1236_linorder__not__le,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ~ ( ord_less_eq_rat @ X2 @ Y ) )
      = ( ord_less_rat @ Y @ X2 ) ) ).

% linorder_not_le
thf(fact_1237_linorder__not__le,axiom,
    ! [X2: num,Y: num] :
      ( ( ~ ( ord_less_eq_num @ X2 @ Y ) )
      = ( ord_less_num @ Y @ X2 ) ) ).

% linorder_not_le
thf(fact_1238_linorder__not__le,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ~ ( ord_less_eq_nat @ X2 @ Y ) )
      = ( ord_less_nat @ Y @ X2 ) ) ).

% linorder_not_le
thf(fact_1239_linorder__not__le,axiom,
    ! [X2: int,Y: int] :
      ( ( ~ ( ord_less_eq_int @ X2 @ Y ) )
      = ( ord_less_int @ Y @ X2 ) ) ).

% linorder_not_le
thf(fact_1240_linorder__not__less,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ~ ( ord_le6747313008572928689nteger @ X2 @ Y ) )
      = ( ord_le3102999989581377725nteger @ Y @ X2 ) ) ).

% linorder_not_less
thf(fact_1241_linorder__not__less,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ~ ( ord_less_rat @ X2 @ Y ) )
      = ( ord_less_eq_rat @ Y @ X2 ) ) ).

% linorder_not_less
thf(fact_1242_linorder__not__less,axiom,
    ! [X2: num,Y: num] :
      ( ( ~ ( ord_less_num @ X2 @ Y ) )
      = ( ord_less_eq_num @ Y @ X2 ) ) ).

% linorder_not_less
thf(fact_1243_linorder__not__less,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ~ ( ord_less_nat @ X2 @ Y ) )
      = ( ord_less_eq_nat @ Y @ X2 ) ) ).

% linorder_not_less
thf(fact_1244_linorder__not__less,axiom,
    ! [X2: int,Y: int] :
      ( ( ~ ( ord_less_int @ X2 @ Y ) )
      = ( ord_less_eq_int @ Y @ X2 ) ) ).

% linorder_not_less
thf(fact_1245_order__less__imp__le,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X2 @ Y )
     => ( ord_le3102999989581377725nteger @ X2 @ Y ) ) ).

% order_less_imp_le
thf(fact_1246_order__less__imp__le,axiom,
    ! [X2: set_nat,Y: set_nat] :
      ( ( ord_less_set_nat @ X2 @ Y )
     => ( ord_less_eq_set_nat @ X2 @ Y ) ) ).

% order_less_imp_le
thf(fact_1247_order__less__imp__le,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ X2 @ Y )
     => ( ord_less_eq_rat @ X2 @ Y ) ) ).

% order_less_imp_le
thf(fact_1248_order__less__imp__le,axiom,
    ! [X2: num,Y: num] :
      ( ( ord_less_num @ X2 @ Y )
     => ( ord_less_eq_num @ X2 @ Y ) ) ).

% order_less_imp_le
thf(fact_1249_order__less__imp__le,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ( ord_less_eq_nat @ X2 @ Y ) ) ).

% order_less_imp_le
thf(fact_1250_order__less__imp__le,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_int @ X2 @ Y )
     => ( ord_less_eq_int @ X2 @ Y ) ) ).

% order_less_imp_le
thf(fact_1251_order__le__neq__trans,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( A != B )
       => ( ord_le6747313008572928689nteger @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_1252_order__le__neq__trans,axiom,
    ! [A: set_nat,B: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( A != B )
       => ( ord_less_set_nat @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_1253_order__le__neq__trans,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( A != B )
       => ( ord_less_rat @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_1254_order__le__neq__trans,axiom,
    ! [A: num,B: num] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( A != B )
       => ( ord_less_num @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_1255_order__le__neq__trans,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( A != B )
       => ( ord_less_nat @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_1256_order__le__neq__trans,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( A != B )
       => ( ord_less_int @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_1257_order__neq__le__trans,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A != B )
     => ( ( ord_le3102999989581377725nteger @ A @ B )
       => ( ord_le6747313008572928689nteger @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_1258_order__neq__le__trans,axiom,
    ! [A: set_nat,B: set_nat] :
      ( ( A != B )
     => ( ( ord_less_eq_set_nat @ A @ B )
       => ( ord_less_set_nat @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_1259_order__neq__le__trans,axiom,
    ! [A: rat,B: rat] :
      ( ( A != B )
     => ( ( ord_less_eq_rat @ A @ B )
       => ( ord_less_rat @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_1260_order__neq__le__trans,axiom,
    ! [A: num,B: num] :
      ( ( A != B )
     => ( ( ord_less_eq_num @ A @ B )
       => ( ord_less_num @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_1261_order__neq__le__trans,axiom,
    ! [A: nat,B: nat] :
      ( ( A != B )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( ord_less_nat @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_1262_order__neq__le__trans,axiom,
    ! [A: int,B: int] :
      ( ( A != B )
     => ( ( ord_less_eq_int @ A @ B )
       => ( ord_less_int @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_1263_order__le__less__trans,axiom,
    ! [X2: code_integer,Y: code_integer,Z2: code_integer] :
      ( ( ord_le3102999989581377725nteger @ X2 @ Y )
     => ( ( ord_le6747313008572928689nteger @ Y @ Z2 )
       => ( ord_le6747313008572928689nteger @ X2 @ Z2 ) ) ) ).

% order_le_less_trans
thf(fact_1264_order__le__less__trans,axiom,
    ! [X2: set_nat,Y: set_nat,Z2: set_nat] :
      ( ( ord_less_eq_set_nat @ X2 @ Y )
     => ( ( ord_less_set_nat @ Y @ Z2 )
       => ( ord_less_set_nat @ X2 @ Z2 ) ) ) ).

% order_le_less_trans
thf(fact_1265_order__le__less__trans,axiom,
    ! [X2: rat,Y: rat,Z2: rat] :
      ( ( ord_less_eq_rat @ X2 @ Y )
     => ( ( ord_less_rat @ Y @ Z2 )
       => ( ord_less_rat @ X2 @ Z2 ) ) ) ).

% order_le_less_trans
thf(fact_1266_order__le__less__trans,axiom,
    ! [X2: num,Y: num,Z2: num] :
      ( ( ord_less_eq_num @ X2 @ Y )
     => ( ( ord_less_num @ Y @ Z2 )
       => ( ord_less_num @ X2 @ Z2 ) ) ) ).

% order_le_less_trans
thf(fact_1267_order__le__less__trans,axiom,
    ! [X2: nat,Y: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ X2 @ Y )
     => ( ( ord_less_nat @ Y @ Z2 )
       => ( ord_less_nat @ X2 @ Z2 ) ) ) ).

% order_le_less_trans
thf(fact_1268_order__le__less__trans,axiom,
    ! [X2: int,Y: int,Z2: int] :
      ( ( ord_less_eq_int @ X2 @ Y )
     => ( ( ord_less_int @ Y @ Z2 )
       => ( ord_less_int @ X2 @ Z2 ) ) ) ).

% order_le_less_trans
thf(fact_1269_order__less__le__trans,axiom,
    ! [X2: code_integer,Y: code_integer,Z2: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X2 @ Y )
     => ( ( ord_le3102999989581377725nteger @ Y @ Z2 )
       => ( ord_le6747313008572928689nteger @ X2 @ Z2 ) ) ) ).

% order_less_le_trans
thf(fact_1270_order__less__le__trans,axiom,
    ! [X2: set_nat,Y: set_nat,Z2: set_nat] :
      ( ( ord_less_set_nat @ X2 @ Y )
     => ( ( ord_less_eq_set_nat @ Y @ Z2 )
       => ( ord_less_set_nat @ X2 @ Z2 ) ) ) ).

% order_less_le_trans
thf(fact_1271_order__less__le__trans,axiom,
    ! [X2: rat,Y: rat,Z2: rat] :
      ( ( ord_less_rat @ X2 @ Y )
     => ( ( ord_less_eq_rat @ Y @ Z2 )
       => ( ord_less_rat @ X2 @ Z2 ) ) ) ).

% order_less_le_trans
thf(fact_1272_order__less__le__trans,axiom,
    ! [X2: num,Y: num,Z2: num] :
      ( ( ord_less_num @ X2 @ Y )
     => ( ( ord_less_eq_num @ Y @ Z2 )
       => ( ord_less_num @ X2 @ Z2 ) ) ) ).

% order_less_le_trans
thf(fact_1273_order__less__le__trans,axiom,
    ! [X2: nat,Y: nat,Z2: nat] :
      ( ( ord_less_nat @ X2 @ Y )
     => ( ( ord_less_eq_nat @ Y @ Z2 )
       => ( ord_less_nat @ X2 @ Z2 ) ) ) ).

% order_less_le_trans
thf(fact_1274_order__less__le__trans,axiom,
    ! [X2: int,Y: int,Z2: int] :
      ( ( ord_less_int @ X2 @ Y )
     => ( ( ord_less_eq_int @ Y @ Z2 )
       => ( ord_less_int @ X2 @ Z2 ) ) ) ).

% order_less_le_trans
thf(fact_1275_order__le__less__subst1,axiom,
    ! [A: code_integer,F: code_integer > code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ ( F @ B ) )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_1276_order__le__less__subst1,axiom,
    ! [A: code_integer,F: rat > code_integer,B: rat,C: rat] :
      ( ( ord_le3102999989581377725nteger @ A @ ( F @ B ) )
     => ( ( ord_less_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_1277_order__le__less__subst1,axiom,
    ! [A: code_integer,F: num > code_integer,B: num,C: num] :
      ( ( ord_le3102999989581377725nteger @ A @ ( F @ B ) )
     => ( ( ord_less_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_num @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_1278_order__le__less__subst1,axiom,
    ! [A: code_integer,F: nat > code_integer,B: nat,C: nat] :
      ( ( ord_le3102999989581377725nteger @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_nat @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_1279_order__le__less__subst1,axiom,
    ! [A: code_integer,F: int > code_integer,B: int,C: int] :
      ( ( ord_le3102999989581377725nteger @ A @ ( F @ B ) )
     => ( ( ord_less_int @ B @ C )
       => ( ! [X3: int,Y2: int] :
              ( ( ord_less_int @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_1280_order__le__less__subst1,axiom,
    ! [A: rat,F: code_integer > rat,B: code_integer,C: code_integer] :
      ( ( ord_less_eq_rat @ A @ ( F @ B ) )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_1281_order__le__less__subst1,axiom,
    ! [A: rat,F: rat > rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ ( F @ B ) )
     => ( ( ord_less_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_1282_order__le__less__subst1,axiom,
    ! [A: rat,F: num > rat,B: num,C: num] :
      ( ( ord_less_eq_rat @ A @ ( F @ B ) )
     => ( ( ord_less_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_num @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_1283_order__le__less__subst1,axiom,
    ! [A: rat,F: nat > rat,B: nat,C: nat] :
      ( ( ord_less_eq_rat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_nat @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_1284_order__le__less__subst1,axiom,
    ! [A: rat,F: int > rat,B: int,C: int] :
      ( ( ord_less_eq_rat @ A @ ( F @ B ) )
     => ( ( ord_less_int @ B @ C )
       => ( ! [X3: int,Y2: int] :
              ( ( ord_less_int @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_1285_order__le__less__subst2,axiom,
    ! [A: rat,B: rat,F: rat > code_integer,C: code_integer] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_le3102999989581377725nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_1286_order__le__less__subst2,axiom,
    ! [A: rat,B: rat,F: rat > rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_rat @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_1287_order__le__less__subst2,axiom,
    ! [A: rat,B: rat,F: rat > num,C: num] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_num @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_num @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_1288_order__le__less__subst2,axiom,
    ! [A: rat,B: rat,F: rat > nat,C: nat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_1289_order__le__less__subst2,axiom,
    ! [A: rat,B: rat,F: rat > int,C: int] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_int @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_int @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_1290_order__le__less__subst2,axiom,
    ! [A: num,B: num,F: num > code_integer,C: code_integer] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ ( F @ B ) @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_le3102999989581377725nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_1291_order__le__less__subst2,axiom,
    ! [A: num,B: num,F: num > rat,C: rat] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ord_less_rat @ ( F @ B ) @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_1292_order__le__less__subst2,axiom,
    ! [A: num,B: num,F: num > num,C: num] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ord_less_num @ ( F @ B ) @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_num @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_1293_order__le__less__subst2,axiom,
    ! [A: num,B: num,F: num > nat,C: nat] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_1294_order__le__less__subst2,axiom,
    ! [A: num,B: num,F: num > int,C: int] :
      ( ( ord_less_eq_num @ A @ B )
     => ( ( ord_less_int @ ( F @ B ) @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_int @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_1295_order__less__le__subst1,axiom,
    ! [A: code_integer,F: rat > code_integer,B: rat,C: rat] :
      ( ( ord_le6747313008572928689nteger @ A @ ( F @ B ) )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_le3102999989581377725nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_1296_order__less__le__subst1,axiom,
    ! [A: rat,F: rat > rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_1297_order__less__le__subst1,axiom,
    ! [A: num,F: rat > num,B: rat,C: rat] :
      ( ( ord_less_num @ A @ ( F @ B ) )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_num @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_1298_order__less__le__subst1,axiom,
    ! [A: nat,F: rat > nat,B: rat,C: rat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_1299_order__less__le__subst1,axiom,
    ! [A: int,F: rat > int,B: rat,C: rat] :
      ( ( ord_less_int @ A @ ( F @ B ) )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_eq_rat @ X3 @ Y2 )
             => ( ord_less_eq_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_int @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_1300_order__less__le__subst1,axiom,
    ! [A: code_integer,F: num > code_integer,B: num,C: num] :
      ( ( ord_le6747313008572928689nteger @ A @ ( F @ B ) )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_le3102999989581377725nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_1301_order__less__le__subst1,axiom,
    ! [A: rat,F: num > rat,B: num,C: num] :
      ( ( ord_less_rat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_1302_order__less__le__subst1,axiom,
    ! [A: num,F: num > num,B: num,C: num] :
      ( ( ord_less_num @ A @ ( F @ B ) )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_num @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_num @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_1303_order__less__le__subst1,axiom,
    ! [A: nat,F: num > nat,B: num,C: num] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_1304_order__less__le__subst1,axiom,
    ! [A: int,F: num > int,B: num,C: num] :
      ( ( ord_less_int @ A @ ( F @ B ) )
     => ( ( ord_less_eq_num @ B @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_eq_num @ X3 @ Y2 )
             => ( ord_less_eq_int @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_int @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_1305_order__less__le__subst2,axiom,
    ! [A: code_integer,B: code_integer,F: code_integer > code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ ( F @ B ) @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_1306_order__less__le__subst2,axiom,
    ! [A: rat,B: rat,F: rat > code_integer,C: code_integer] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_1307_order__less__le__subst2,axiom,
    ! [A: num,B: num,F: num > code_integer,C: code_integer] :
      ( ( ord_less_num @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ ( F @ B ) @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_num @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_1308_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > code_integer,C: code_integer] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ ( F @ B ) @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_nat @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_1309_order__less__le__subst2,axiom,
    ! [A: int,B: int,F: int > code_integer,C: code_integer] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ ( F @ B ) @ C )
       => ( ! [X3: int,Y2: int] :
              ( ( ord_less_int @ X3 @ Y2 )
             => ( ord_le6747313008572928689nteger @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_le6747313008572928689nteger @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_1310_order__less__le__subst2,axiom,
    ! [A: code_integer,B: code_integer,F: code_integer > rat,C: rat] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_less_eq_rat @ ( F @ B ) @ C )
       => ( ! [X3: code_integer,Y2: code_integer] :
              ( ( ord_le6747313008572928689nteger @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_1311_order__less__le__subst2,axiom,
    ! [A: rat,B: rat,F: rat > rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_eq_rat @ ( F @ B ) @ C )
       => ( ! [X3: rat,Y2: rat] :
              ( ( ord_less_rat @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_1312_order__less__le__subst2,axiom,
    ! [A: num,B: num,F: num > rat,C: rat] :
      ( ( ord_less_num @ A @ B )
     => ( ( ord_less_eq_rat @ ( F @ B ) @ C )
       => ( ! [X3: num,Y2: num] :
              ( ( ord_less_num @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_1313_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > rat,C: rat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_rat @ ( F @ B ) @ C )
       => ( ! [X3: nat,Y2: nat] :
              ( ( ord_less_nat @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_1314_order__less__le__subst2,axiom,
    ! [A: int,B: int,F: int > rat,C: rat] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_eq_rat @ ( F @ B ) @ C )
       => ( ! [X3: int,Y2: int] :
              ( ( ord_less_int @ X3 @ Y2 )
             => ( ord_less_rat @ ( F @ X3 ) @ ( F @ Y2 ) ) )
         => ( ord_less_rat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_1315_linorder__le__less__linear,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le3102999989581377725nteger @ X2 @ Y )
      | ( ord_le6747313008572928689nteger @ Y @ X2 ) ) ).

% linorder_le_less_linear
thf(fact_1316_linorder__le__less__linear,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ X2 @ Y )
      | ( ord_less_rat @ Y @ X2 ) ) ).

% linorder_le_less_linear
thf(fact_1317_linorder__le__less__linear,axiom,
    ! [X2: num,Y: num] :
      ( ( ord_less_eq_num @ X2 @ Y )
      | ( ord_less_num @ Y @ X2 ) ) ).

% linorder_le_less_linear
thf(fact_1318_linorder__le__less__linear,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X2 @ Y )
      | ( ord_less_nat @ Y @ X2 ) ) ).

% linorder_le_less_linear
thf(fact_1319_linorder__le__less__linear,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ X2 @ Y )
      | ( ord_less_int @ Y @ X2 ) ) ).

% linorder_le_less_linear
thf(fact_1320_order__le__imp__less__or__eq,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le3102999989581377725nteger @ X2 @ Y )
     => ( ( ord_le6747313008572928689nteger @ X2 @ Y )
        | ( X2 = Y ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_1321_order__le__imp__less__or__eq,axiom,
    ! [X2: set_nat,Y: set_nat] :
      ( ( ord_less_eq_set_nat @ X2 @ Y )
     => ( ( ord_less_set_nat @ X2 @ Y )
        | ( X2 = Y ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_1322_order__le__imp__less__or__eq,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ X2 @ Y )
     => ( ( ord_less_rat @ X2 @ Y )
        | ( X2 = Y ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_1323_order__le__imp__less__or__eq,axiom,
    ! [X2: num,Y: num] :
      ( ( ord_less_eq_num @ X2 @ Y )
     => ( ( ord_less_num @ X2 @ Y )
        | ( X2 = Y ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_1324_order__le__imp__less__or__eq,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ord_less_eq_nat @ X2 @ Y )
     => ( ( ord_less_nat @ X2 @ Y )
        | ( X2 = Y ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_1325_order__le__imp__less__or__eq,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ X2 @ Y )
     => ( ( ord_less_int @ X2 @ Y )
        | ( X2 = Y ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_1326_minf_I8_J,axiom,
    ! [T: code_integer] :
    ? [Z4: code_integer] :
    ! [X4: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X4 @ Z4 )
     => ~ ( ord_le3102999989581377725nteger @ T @ X4 ) ) ).

% minf(8)
thf(fact_1327_minf_I8_J,axiom,
    ! [T: rat] :
    ? [Z4: rat] :
    ! [X4: rat] :
      ( ( ord_less_rat @ X4 @ Z4 )
     => ~ ( ord_less_eq_rat @ T @ X4 ) ) ).

% minf(8)
thf(fact_1328_minf_I8_J,axiom,
    ! [T: num] :
    ? [Z4: num] :
    ! [X4: num] :
      ( ( ord_less_num @ X4 @ Z4 )
     => ~ ( ord_less_eq_num @ T @ X4 ) ) ).

% minf(8)
thf(fact_1329_minf_I8_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z4 )
     => ~ ( ord_less_eq_nat @ T @ X4 ) ) ).

% minf(8)
thf(fact_1330_minf_I8_J,axiom,
    ! [T: int] :
    ? [Z4: int] :
    ! [X4: int] :
      ( ( ord_less_int @ X4 @ Z4 )
     => ~ ( ord_less_eq_int @ T @ X4 ) ) ).

% minf(8)
thf(fact_1331_minf_I6_J,axiom,
    ! [T: code_integer] :
    ? [Z4: code_integer] :
    ! [X4: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X4 @ Z4 )
     => ( ord_le3102999989581377725nteger @ X4 @ T ) ) ).

% minf(6)
thf(fact_1332_minf_I6_J,axiom,
    ! [T: rat] :
    ? [Z4: rat] :
    ! [X4: rat] :
      ( ( ord_less_rat @ X4 @ Z4 )
     => ( ord_less_eq_rat @ X4 @ T ) ) ).

% minf(6)
thf(fact_1333_minf_I6_J,axiom,
    ! [T: num] :
    ? [Z4: num] :
    ! [X4: num] :
      ( ( ord_less_num @ X4 @ Z4 )
     => ( ord_less_eq_num @ X4 @ T ) ) ).

% minf(6)
thf(fact_1334_minf_I6_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z4 )
     => ( ord_less_eq_nat @ X4 @ T ) ) ).

% minf(6)
thf(fact_1335_minf_I6_J,axiom,
    ! [T: int] :
    ? [Z4: int] :
    ! [X4: int] :
      ( ( ord_less_int @ X4 @ Z4 )
     => ( ord_less_eq_int @ X4 @ T ) ) ).

% minf(6)
thf(fact_1336_pinf_I8_J,axiom,
    ! [T: code_integer] :
    ? [Z4: code_integer] :
    ! [X4: code_integer] :
      ( ( ord_le6747313008572928689nteger @ Z4 @ X4 )
     => ( ord_le3102999989581377725nteger @ T @ X4 ) ) ).

% pinf(8)
thf(fact_1337_pinf_I8_J,axiom,
    ! [T: rat] :
    ? [Z4: rat] :
    ! [X4: rat] :
      ( ( ord_less_rat @ Z4 @ X4 )
     => ( ord_less_eq_rat @ T @ X4 ) ) ).

% pinf(8)
thf(fact_1338_pinf_I8_J,axiom,
    ! [T: num] :
    ? [Z4: num] :
    ! [X4: num] :
      ( ( ord_less_num @ Z4 @ X4 )
     => ( ord_less_eq_num @ T @ X4 ) ) ).

% pinf(8)
thf(fact_1339_pinf_I8_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z4 @ X4 )
     => ( ord_less_eq_nat @ T @ X4 ) ) ).

% pinf(8)
thf(fact_1340_pinf_I8_J,axiom,
    ! [T: int] :
    ? [Z4: int] :
    ! [X4: int] :
      ( ( ord_less_int @ Z4 @ X4 )
     => ( ord_less_eq_int @ T @ X4 ) ) ).

% pinf(8)
thf(fact_1341_pinf_I6_J,axiom,
    ! [T: code_integer] :
    ? [Z4: code_integer] :
    ! [X4: code_integer] :
      ( ( ord_le6747313008572928689nteger @ Z4 @ X4 )
     => ~ ( ord_le3102999989581377725nteger @ X4 @ T ) ) ).

% pinf(6)
thf(fact_1342_pinf_I6_J,axiom,
    ! [T: rat] :
    ? [Z4: rat] :
    ! [X4: rat] :
      ( ( ord_less_rat @ Z4 @ X4 )
     => ~ ( ord_less_eq_rat @ X4 @ T ) ) ).

% pinf(6)
thf(fact_1343_pinf_I6_J,axiom,
    ! [T: num] :
    ? [Z4: num] :
    ! [X4: num] :
      ( ( ord_less_num @ Z4 @ X4 )
     => ~ ( ord_less_eq_num @ X4 @ T ) ) ).

% pinf(6)
thf(fact_1344_pinf_I6_J,axiom,
    ! [T: nat] :
    ? [Z4: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z4 @ X4 )
     => ~ ( ord_less_eq_nat @ X4 @ T ) ) ).

% pinf(6)
thf(fact_1345_pinf_I6_J,axiom,
    ! [T: int] :
    ? [Z4: int] :
    ! [X4: int] :
      ( ( ord_less_int @ Z4 @ X4 )
     => ~ ( ord_less_eq_int @ X4 @ T ) ) ).

% pinf(6)
thf(fact_1346_zero__less__iff__neq__zero,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
      = ( N != zero_zero_nat ) ) ).

% zero_less_iff_neq_zero
thf(fact_1347_gr__implies__not__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( N != zero_zero_nat ) ) ).

% gr_implies_not_zero
thf(fact_1348_not__less__zero,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% not_less_zero
thf(fact_1349_gr__zeroI,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% gr_zeroI
thf(fact_1350_less__numeral__extra_I3_J,axiom,
    ~ ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ zero_z2226904508553997617atural ) ).

% less_numeral_extra(3)
thf(fact_1351_less__numeral__extra_I3_J,axiom,
    ~ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger ) ).

% less_numeral_extra(3)
thf(fact_1352_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_rat @ zero_zero_rat @ zero_zero_rat ) ).

% less_numeral_extra(3)
thf(fact_1353_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_nat @ zero_zero_nat @ zero_zero_nat ) ).

% less_numeral_extra(3)
thf(fact_1354_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_int @ zero_zero_int @ zero_zero_int ) ).

% less_numeral_extra(3)
thf(fact_1355_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I: code_integer,J: code_integer,K: code_integer,L: code_integer] :
      ( ( ( ord_le6747313008572928689nteger @ I @ J )
        & ( ord_le6747313008572928689nteger @ K @ L ) )
     => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ I @ K ) @ ( plus_p5714425477246183910nteger @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_1356_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( ord_less_rat @ I @ J )
        & ( ord_less_rat @ K @ L ) )
     => ( ord_less_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_1357_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_1358_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( ord_less_int @ I @ J )
        & ( ord_less_int @ K @ L ) )
     => ( ord_less_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_1359_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I: code_integer,J: code_integer,K: code_integer,L: code_integer] :
      ( ( ( I = J )
        & ( ord_le6747313008572928689nteger @ K @ L ) )
     => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ I @ K ) @ ( plus_p5714425477246183910nteger @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_1360_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( I = J )
        & ( ord_less_rat @ K @ L ) )
     => ( ord_less_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_1361_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( I = J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_1362_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( I = J )
        & ( ord_less_int @ K @ L ) )
     => ( ord_less_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_1363_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I: code_integer,J: code_integer,K: code_integer,L: code_integer] :
      ( ( ( ord_le6747313008572928689nteger @ I @ J )
        & ( K = L ) )
     => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ I @ K ) @ ( plus_p5714425477246183910nteger @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_1364_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( ord_less_rat @ I @ J )
        & ( K = L ) )
     => ( ord_less_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_1365_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( K = L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_1366_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( ord_less_int @ I @ J )
        & ( K = L ) )
     => ( ord_less_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_1367_add__strict__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ C @ D )
       => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ ( plus_p5714425477246183910nteger @ B @ D ) ) ) ) ).

% add_strict_mono
thf(fact_1368_add__strict__mono,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ C @ D )
       => ( ord_less_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ D ) ) ) ) ).

% add_strict_mono
thf(fact_1369_add__strict__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% add_strict_mono
thf(fact_1370_add__strict__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ C @ D )
       => ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ D ) ) ) ) ).

% add_strict_mono
thf(fact_1371_add__strict__left__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ C @ A ) @ ( plus_p5714425477246183910nteger @ C @ B ) ) ) ).

% add_strict_left_mono
thf(fact_1372_add__strict__left__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ord_less_rat @ ( plus_plus_rat @ C @ A ) @ ( plus_plus_rat @ C @ B ) ) ) ).

% add_strict_left_mono
thf(fact_1373_add__strict__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) ) ) ).

% add_strict_left_mono
thf(fact_1374_add__strict__left__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) ) ) ).

% add_strict_left_mono
thf(fact_1375_add__strict__right__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ ( plus_p5714425477246183910nteger @ B @ C ) ) ) ).

% add_strict_right_mono
thf(fact_1376_add__strict__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ord_less_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ C ) ) ) ).

% add_strict_right_mono
thf(fact_1377_add__strict__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) ) ) ).

% add_strict_right_mono
thf(fact_1378_add__strict__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) ) ) ).

% add_strict_right_mono
thf(fact_1379_add__less__imp__less__left,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ C @ A ) @ ( plus_p5714425477246183910nteger @ C @ B ) )
     => ( ord_le6747313008572928689nteger @ A @ B ) ) ).

% add_less_imp_less_left
thf(fact_1380_add__less__imp__less__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ C @ A ) @ ( plus_plus_rat @ C @ B ) )
     => ( ord_less_rat @ A @ B ) ) ).

% add_less_imp_less_left
thf(fact_1381_add__less__imp__less__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
     => ( ord_less_nat @ A @ B ) ) ).

% add_less_imp_less_left
thf(fact_1382_add__less__imp__less__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
     => ( ord_less_int @ A @ B ) ) ).

% add_less_imp_less_left
thf(fact_1383_add__less__imp__less__right,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ ( plus_p5714425477246183910nteger @ B @ C ) )
     => ( ord_le6747313008572928689nteger @ A @ B ) ) ).

% add_less_imp_less_right
thf(fact_1384_add__less__imp__less__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ C ) )
     => ( ord_less_rat @ A @ B ) ) ).

% add_less_imp_less_right
thf(fact_1385_add__less__imp__less__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
     => ( ord_less_nat @ A @ B ) ) ).

% add_less_imp_less_right
thf(fact_1386_add__less__imp__less__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
     => ( ord_less_int @ A @ B ) ) ).

% add_less_imp_less_right
thf(fact_1387_less__numeral__extra_I4_J,axiom,
    ~ ( ord_le5570908160329646204atural @ one_one_Code_natural @ one_one_Code_natural ) ).

% less_numeral_extra(4)
thf(fact_1388_less__numeral__extra_I4_J,axiom,
    ~ ( ord_le6747313008572928689nteger @ one_one_Code_integer @ one_one_Code_integer ) ).

% less_numeral_extra(4)
thf(fact_1389_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_rat @ one_one_rat @ one_one_rat ) ).

% less_numeral_extra(4)
thf(fact_1390_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_nat @ one_one_nat @ one_one_nat ) ).

% less_numeral_extra(4)
thf(fact_1391_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_int @ one_one_int @ one_one_int ) ).

% less_numeral_extra(4)
thf(fact_1392_bot__nat__0_Oextremum__strict,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ zero_zero_nat ) ).

% bot_nat_0.extremum_strict
thf(fact_1393_gr0I,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% gr0I
thf(fact_1394_not__gr0,axiom,
    ! [N: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
      = ( N = zero_zero_nat ) ) ).

% not_gr0
thf(fact_1395_not__less0,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% not_less0
thf(fact_1396_less__zeroE,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% less_zeroE
thf(fact_1397_gr__implies__not0,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( N != zero_zero_nat ) ) ).

% gr_implies_not0
thf(fact_1398_infinite__descent0,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N2: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N2 )
           => ( ~ ( P @ N2 )
             => ? [M6: nat] :
                  ( ( ord_less_nat @ M6 @ N2 )
                  & ~ ( P @ M6 ) ) ) )
       => ( P @ N ) ) ) ).

% infinite_descent0
thf(fact_1399_reals__Archimedean2,axiom,
    ! [X2: rat] :
    ? [N2: nat] : ( ord_less_rat @ X2 @ ( semiri681578069525770553at_rat @ N2 ) ) ).

% reals_Archimedean2
thf(fact_1400_less__int__code_I1_J,axiom,
    ~ ( ord_less_int @ zero_zero_int @ zero_zero_int ) ).

% less_int_code(1)
thf(fact_1401_exists__leI,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [N5: nat] :
            ( ( ord_less_nat @ N5 @ N )
           => ~ ( P @ N5 ) )
       => ( P @ N ) )
     => ? [N6: nat] :
          ( ( ord_less_eq_nat @ N6 @ N )
          & ( P @ N6 ) ) ) ).

% exists_leI
thf(fact_1402_nat__less__le,axiom,
    ( ord_less_nat
    = ( ^ [M2: nat,N3: nat] :
          ( ( ord_less_eq_nat @ M2 @ N3 )
          & ( M2 != N3 ) ) ) ) ).

% nat_less_le
thf(fact_1403_less__imp__le__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% less_imp_le_nat
thf(fact_1404_le__eq__less__or__eq,axiom,
    ( ord_less_eq_nat
    = ( ^ [M2: nat,N3: nat] :
          ( ( ord_less_nat @ M2 @ N3 )
          | ( M2 = N3 ) ) ) ) ).

% le_eq_less_or_eq
thf(fact_1405_less__or__eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ( ord_less_nat @ M @ N )
        | ( M = N ) )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% less_or_eq_imp_le
thf(fact_1406_le__neq__implies__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( M != N )
       => ( ord_less_nat @ M @ N ) ) ) ).

% le_neq_implies_less
thf(fact_1407_less__mono__imp__le__mono,axiom,
    ! [F: nat > nat,I: nat,J: nat] :
      ( ! [I3: nat,J2: nat] :
          ( ( ord_less_nat @ I3 @ J2 )
         => ( ord_less_nat @ ( F @ I3 ) @ ( F @ J2 ) ) )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ord_less_eq_nat @ ( F @ I ) @ ( F @ J ) ) ) ) ).

% less_mono_imp_le_mono
thf(fact_1408_add__lessD1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I @ J ) @ K )
     => ( ord_less_nat @ I @ K ) ) ).

% add_lessD1
thf(fact_1409_add__less__mono,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ K @ L )
       => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ) ).

% add_less_mono
thf(fact_1410_not__add__less1,axiom,
    ! [I: nat,J: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ I @ J ) @ I ) ).

% not_add_less1
thf(fact_1411_not__add__less2,axiom,
    ! [J: nat,I: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ J @ I ) @ I ) ).

% not_add_less2
thf(fact_1412_add__less__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).

% add_less_mono1
thf(fact_1413_trans__less__add1,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ J @ M ) ) ) ).

% trans_less_add1
thf(fact_1414_trans__less__add2,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ M @ J ) ) ) ).

% trans_less_add2
thf(fact_1415_less__add__eq__less,axiom,
    ! [K: nat,L: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ K @ L )
     => ( ( ( plus_plus_nat @ M @ L )
          = ( plus_plus_nat @ K @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% less_add_eq_less
thf(fact_1416_ex__less__of__int,axiom,
    ! [X2: rat] :
    ? [Z4: int] : ( ord_less_rat @ X2 @ ( ring_1_of_int_rat @ Z4 ) ) ).

% ex_less_of_int
thf(fact_1417_ex__of__int__less,axiom,
    ! [X2: rat] :
    ? [Z4: int] : ( ord_less_rat @ ( ring_1_of_int_rat @ Z4 ) @ X2 ) ).

% ex_of_int_less
thf(fact_1418_of__nat__floor,axiom,
    ! [R: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ R )
     => ( ord_less_eq_rat @ ( semiri681578069525770553at_rat @ ( nat2 @ ( archim3151403230148437115or_rat @ R ) ) ) @ R ) ) ).

% of_nat_floor
thf(fact_1419_nat__le__eq__zle,axiom,
    ! [W2: int,Z2: int] :
      ( ( ( ord_less_int @ zero_zero_int @ W2 )
        | ( ord_less_eq_int @ zero_zero_int @ Z2 ) )
     => ( ( ord_less_eq_nat @ ( nat2 @ W2 ) @ ( nat2 @ Z2 ) )
        = ( ord_less_eq_int @ W2 @ Z2 ) ) ) ).

% nat_le_eq_zle
thf(fact_1420_split__nat,axiom,
    ! [P: nat > $o,I: int] :
      ( ( P @ ( nat2 @ I ) )
      = ( ! [N3: nat] :
            ( ( I
              = ( semiri1314217659103216013at_int @ N3 ) )
           => ( P @ N3 ) )
        & ( ( ord_less_int @ I @ zero_zero_int )
         => ( P @ zero_zero_nat ) ) ) ) ).

% split_nat
thf(fact_1421_of__int__pos,axiom,
    ! [Z2: int] :
      ( ( ord_less_int @ zero_zero_int @ Z2 )
     => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( ring_18347121197199848620nteger @ Z2 ) ) ) ).

% of_int_pos
thf(fact_1422_of__int__pos,axiom,
    ! [Z2: int] :
      ( ( ord_less_int @ zero_zero_int @ Z2 )
     => ( ord_less_rat @ zero_zero_rat @ ( ring_1_of_int_rat @ Z2 ) ) ) ).

% of_int_pos
thf(fact_1423_of__int__pos,axiom,
    ! [Z2: int] :
      ( ( ord_less_int @ zero_zero_int @ Z2 )
     => ( ord_less_int @ zero_zero_int @ ( ring_1_of_int_int @ Z2 ) ) ) ).

% of_int_pos
thf(fact_1424_zero__less__imp__eq__int,axiom,
    ! [K: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ? [N2: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ N2 )
          & ( K
            = ( semiri1314217659103216013at_int @ N2 ) ) ) ) ).

% zero_less_imp_eq_int
thf(fact_1425_pos__int__cases,axiom,
    ! [K: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ~ ! [N2: nat] :
            ( ( K
              = ( semiri1314217659103216013at_int @ N2 ) )
           => ~ ( ord_less_nat @ zero_zero_nat @ N2 ) ) ) ).

% pos_int_cases
thf(fact_1426_of__nat__less__of__int__iff,axiom,
    ! [N: nat,X2: int] :
      ( ( ord_less_int @ ( semiri1314217659103216013at_int @ N ) @ ( ring_1_of_int_int @ X2 ) )
      = ( ord_less_int @ ( semiri1314217659103216013at_int @ N ) @ X2 ) ) ).

% of_nat_less_of_int_iff
thf(fact_1427_of__nat__less__of__int__iff,axiom,
    ! [N: nat,X2: int] :
      ( ( ord_le6747313008572928689nteger @ ( semiri4939895301339042750nteger @ N ) @ ( ring_18347121197199848620nteger @ X2 ) )
      = ( ord_less_int @ ( semiri1314217659103216013at_int @ N ) @ X2 ) ) ).

% of_nat_less_of_int_iff
thf(fact_1428_of__nat__less__of__int__iff,axiom,
    ! [N: nat,X2: int] :
      ( ( ord_less_rat @ ( semiri681578069525770553at_rat @ N ) @ ( ring_1_of_int_rat @ X2 ) )
      = ( ord_less_int @ ( semiri1314217659103216013at_int @ N ) @ X2 ) ) ).

% of_nat_less_of_int_iff
thf(fact_1429_zero__le__power__int,axiom,
    ! [X2: rat,N: int] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X2 )
     => ( ord_less_eq_rat @ zero_zero_rat @ ( power_int_rat @ X2 @ N ) ) ) ).

% zero_le_power_int
thf(fact_1430_power__int__le__imp__le__exp,axiom,
    ! [X2: rat,M: int,N: int] :
      ( ( ord_less_rat @ one_one_rat @ X2 )
     => ( ( ord_less_eq_rat @ ( power_int_rat @ X2 @ M ) @ ( power_int_rat @ X2 @ N ) )
       => ( ( ord_less_eq_int @ zero_zero_int @ N )
         => ( ord_less_eq_int @ M @ N ) ) ) ) ).

% power_int_le_imp_le_exp
thf(fact_1431_floor__split,axiom,
    ! [P: int > $o,T: rat] :
      ( ( P @ ( archim3151403230148437115or_rat @ T ) )
      = ( ! [I2: int] :
            ( ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ I2 ) @ T )
              & ( ord_less_rat @ T @ ( plus_plus_rat @ ( ring_1_of_int_rat @ I2 ) @ one_one_rat ) ) )
           => ( P @ I2 ) ) ) ) ).

% floor_split
thf(fact_1432_floor__eq__iff,axiom,
    ! [X2: rat,A: int] :
      ( ( ( archim3151403230148437115or_rat @ X2 )
        = A )
      = ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ A ) @ X2 )
        & ( ord_less_rat @ X2 @ ( plus_plus_rat @ ( ring_1_of_int_rat @ A ) @ one_one_rat ) ) ) ) ).

% floor_eq_iff
thf(fact_1433_floor__unique,axiom,
    ! [Z2: int,X2: rat] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ Z2 ) @ X2 )
     => ( ( ord_less_rat @ X2 @ ( plus_plus_rat @ ( ring_1_of_int_rat @ Z2 ) @ one_one_rat ) )
       => ( ( archim3151403230148437115or_rat @ X2 )
          = Z2 ) ) ) ).

% floor_unique
thf(fact_1434_less__floor__iff,axiom,
    ! [Z2: int,X2: rat] :
      ( ( ord_less_int @ Z2 @ ( archim3151403230148437115or_rat @ X2 ) )
      = ( ord_less_eq_rat @ ( plus_plus_rat @ ( ring_1_of_int_rat @ Z2 ) @ one_one_rat ) @ X2 ) ) ).

% less_floor_iff
thf(fact_1435_power__int__not__zero,axiom,
    ! [X2: rat,N: int] :
      ( ( ( X2 != zero_zero_rat )
        | ( N = zero_zero_int ) )
     => ( ( power_int_rat @ X2 @ N )
       != zero_zero_rat ) ) ).

% power_int_not_zero
thf(fact_1436_floor__le__iff,axiom,
    ! [X2: rat,Z2: int] :
      ( ( ord_less_eq_int @ ( archim3151403230148437115or_rat @ X2 ) @ Z2 )
      = ( ord_less_rat @ X2 @ ( plus_plus_rat @ ( ring_1_of_int_rat @ Z2 ) @ one_one_rat ) ) ) ).

% floor_le_iff
thf(fact_1437_floor__correct,axiom,
    ! [X2: rat] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ ( archim3151403230148437115or_rat @ X2 ) ) @ X2 )
      & ( ord_less_rat @ X2 @ ( ring_1_of_int_rat @ ( plus_plus_int @ ( archim3151403230148437115or_rat @ X2 ) @ one_one_int ) ) ) ) ).

% floor_correct
thf(fact_1438_floor__mono,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ X2 @ Y )
     => ( ord_less_eq_int @ ( archim3151403230148437115or_rat @ X2 ) @ ( archim3151403230148437115or_rat @ Y ) ) ) ).

% floor_mono
thf(fact_1439_nat__zero__as__int,axiom,
    ( zero_zero_nat
    = ( nat2 @ zero_zero_int ) ) ).

% nat_zero_as_int
thf(fact_1440_of__int__floor__le,axiom,
    ! [X2: rat] : ( ord_less_eq_rat @ ( ring_1_of_int_rat @ ( archim3151403230148437115or_rat @ X2 ) ) @ X2 ) ).

% of_int_floor_le
thf(fact_1441_nat__mono,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ X2 @ Y )
     => ( ord_less_eq_nat @ ( nat2 @ X2 ) @ ( nat2 @ Y ) ) ) ).

% nat_mono
thf(fact_1442_ex__nat,axiom,
    ( ( ^ [P4: nat > $o] :
        ? [X7: nat] : ( P4 @ X7 ) )
    = ( ^ [P5: nat > $o] :
        ? [X: int] :
          ( ( ord_less_eq_int @ zero_zero_int @ X )
          & ( P5 @ ( nat2 @ X ) ) ) ) ) ).

% ex_nat
thf(fact_1443_all__nat,axiom,
    ( ( ^ [P4: nat > $o] :
        ! [X7: nat] : ( P4 @ X7 ) )
    = ( ^ [P5: nat > $o] :
        ! [X: int] :
          ( ( ord_less_eq_int @ zero_zero_int @ X )
         => ( P5 @ ( nat2 @ X ) ) ) ) ) ).

% all_nat
thf(fact_1444_eq__nat__nat__iff,axiom,
    ! [Z2: int,Z6: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
     => ( ( ord_less_eq_int @ zero_zero_int @ Z6 )
       => ( ( ( nat2 @ Z2 )
            = ( nat2 @ Z6 ) )
          = ( Z2 = Z6 ) ) ) ) ).

% eq_nat_nat_iff
thf(fact_1445_nat__one__as__int,axiom,
    ( one_one_nat
    = ( nat2 @ one_one_int ) ) ).

% nat_one_as_int
thf(fact_1446_add__less__le__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ C @ D )
       => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ ( plus_p5714425477246183910nteger @ B @ D ) ) ) ) ).

% add_less_le_mono
thf(fact_1447_add__less__le__mono,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_eq_rat @ C @ D )
       => ( ord_less_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ D ) ) ) ) ).

% add_less_le_mono
thf(fact_1448_add__less__le__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% add_less_le_mono
thf(fact_1449_add__less__le__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_eq_int @ C @ D )
       => ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ D ) ) ) ) ).

% add_less_le_mono
thf(fact_1450_add__le__less__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ C @ D )
       => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ ( plus_p5714425477246183910nteger @ B @ D ) ) ) ) ).

% add_le_less_mono
thf(fact_1451_add__le__less__mono,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_rat @ C @ D )
       => ( ord_less_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ D ) ) ) ) ).

% add_le_less_mono
thf(fact_1452_add__le__less__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% add_le_less_mono
thf(fact_1453_add__le__less__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_int @ C @ D )
       => ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ D ) ) ) ) ).

% add_le_less_mono
thf(fact_1454_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I: code_integer,J: code_integer,K: code_integer,L: code_integer] :
      ( ( ( ord_le6747313008572928689nteger @ I @ J )
        & ( ord_le3102999989581377725nteger @ K @ L ) )
     => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ I @ K ) @ ( plus_p5714425477246183910nteger @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_1455_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( ord_less_rat @ I @ J )
        & ( ord_less_eq_rat @ K @ L ) )
     => ( ord_less_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_1456_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_1457_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( ord_less_int @ I @ J )
        & ( ord_less_eq_int @ K @ L ) )
     => ( ord_less_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_1458_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I: code_integer,J: code_integer,K: code_integer,L: code_integer] :
      ( ( ( ord_le3102999989581377725nteger @ I @ J )
        & ( ord_le6747313008572928689nteger @ K @ L ) )
     => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ I @ K ) @ ( plus_p5714425477246183910nteger @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_1459_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I: rat,J: rat,K: rat,L: rat] :
      ( ( ( ord_less_eq_rat @ I @ J )
        & ( ord_less_rat @ K @ L ) )
     => ( ord_less_rat @ ( plus_plus_rat @ I @ K ) @ ( plus_plus_rat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_1460_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_1461_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I: int,J: int,K: int,L: int] :
      ( ( ( ord_less_eq_int @ I @ J )
        & ( ord_less_int @ K @ L ) )
     => ( ord_less_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_1462_add__less__zeroD,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ X2 @ Y ) @ zero_z3403309356797280102nteger )
     => ( ( ord_le6747313008572928689nteger @ X2 @ zero_z3403309356797280102nteger )
        | ( ord_le6747313008572928689nteger @ Y @ zero_z3403309356797280102nteger ) ) ) ).

% add_less_zeroD
thf(fact_1463_add__less__zeroD,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ X2 @ Y ) @ zero_zero_rat )
     => ( ( ord_less_rat @ X2 @ zero_zero_rat )
        | ( ord_less_rat @ Y @ zero_zero_rat ) ) ) ).

% add_less_zeroD
thf(fact_1464_add__less__zeroD,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_int @ ( plus_plus_int @ X2 @ Y ) @ zero_zero_int )
     => ( ( ord_less_int @ X2 @ zero_zero_int )
        | ( ord_less_int @ Y @ zero_zero_int ) ) ) ).

% add_less_zeroD
thf(fact_1465_add__neg__neg,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ zero_z2226904508553997617atural )
     => ( ( ord_le5570908160329646204atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le5570908160329646204atural @ ( plus_p4538020629002901425atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% add_neg_neg
thf(fact_1466_add__neg__neg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le6747313008572928689nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% add_neg_neg
thf(fact_1467_add__neg__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ord_less_rat @ ( plus_plus_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% add_neg_neg
thf(fact_1468_add__neg__neg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ zero_zero_nat )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_neg_neg
thf(fact_1469_add__neg__neg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_int @ ( plus_plus_int @ A @ B ) @ zero_zero_int ) ) ) ).

% add_neg_neg
thf(fact_1470_add__pos__pos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( plus_p4538020629002901425atural @ A @ B ) ) ) ) ).

% add_pos_pos
thf(fact_1471_add__pos__pos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ A @ B ) ) ) ) ).

% add_pos_pos
thf(fact_1472_add__pos__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ zero_zero_rat @ B )
       => ( ord_less_rat @ zero_zero_rat @ ( plus_plus_rat @ A @ B ) ) ) ) ).

% add_pos_pos
thf(fact_1473_add__pos__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_pos_pos
thf(fact_1474_add__pos__pos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ A @ B ) ) ) ) ).

% add_pos_pos
thf(fact_1475_canonically__ordered__monoid__add__class_OlessE,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ~ ! [C3: nat] :
            ( ( B
              = ( plus_plus_nat @ A @ C3 ) )
           => ( C3 = zero_zero_nat ) ) ) ).

% canonically_ordered_monoid_add_class.lessE
thf(fact_1476_pos__add__strict,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ B @ C )
       => ( ord_le5570908160329646204atural @ B @ ( plus_p4538020629002901425atural @ A @ C ) ) ) ) ).

% pos_add_strict
thf(fact_1477_pos__add__strict,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ord_le6747313008572928689nteger @ B @ ( plus_p5714425477246183910nteger @ A @ C ) ) ) ) ).

% pos_add_strict
thf(fact_1478_pos__add__strict,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ B @ C )
       => ( ord_less_rat @ B @ ( plus_plus_rat @ A @ C ) ) ) ) ).

% pos_add_strict
thf(fact_1479_pos__add__strict,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% pos_add_strict
thf(fact_1480_pos__add__strict,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ B @ C )
       => ( ord_less_int @ B @ ( plus_plus_int @ A @ C ) ) ) ) ).

% pos_add_strict
thf(fact_1481_zero__less__one,axiom,
    ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ one_one_Code_natural ).

% zero_less_one
thf(fact_1482_zero__less__one,axiom,
    ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ one_one_Code_integer ).

% zero_less_one
thf(fact_1483_zero__less__one,axiom,
    ord_less_rat @ zero_zero_rat @ one_one_rat ).

% zero_less_one
thf(fact_1484_zero__less__one,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

% zero_less_one
thf(fact_1485_zero__less__one,axiom,
    ord_less_int @ zero_zero_int @ one_one_int ).

% zero_less_one
thf(fact_1486_not__one__less__zero,axiom,
    ~ ( ord_le5570908160329646204atural @ one_one_Code_natural @ zero_z2226904508553997617atural ) ).

% not_one_less_zero
thf(fact_1487_not__one__less__zero,axiom,
    ~ ( ord_le6747313008572928689nteger @ one_one_Code_integer @ zero_z3403309356797280102nteger ) ).

% not_one_less_zero
thf(fact_1488_not__one__less__zero,axiom,
    ~ ( ord_less_rat @ one_one_rat @ zero_zero_rat ) ).

% not_one_less_zero
thf(fact_1489_not__one__less__zero,axiom,
    ~ ( ord_less_nat @ one_one_nat @ zero_zero_nat ) ).

% not_one_less_zero
thf(fact_1490_not__one__less__zero,axiom,
    ~ ( ord_less_int @ one_one_int @ zero_zero_int ) ).

% not_one_less_zero
thf(fact_1491_less__numeral__extra_I1_J,axiom,
    ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ one_one_Code_natural ).

% less_numeral_extra(1)
thf(fact_1492_less__numeral__extra_I1_J,axiom,
    ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ one_one_Code_integer ).

% less_numeral_extra(1)
thf(fact_1493_less__numeral__extra_I1_J,axiom,
    ord_less_rat @ zero_zero_rat @ one_one_rat ).

% less_numeral_extra(1)
thf(fact_1494_less__numeral__extra_I1_J,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

% less_numeral_extra(1)
thf(fact_1495_less__numeral__extra_I1_J,axiom,
    ord_less_int @ zero_zero_int @ one_one_int ).

% less_numeral_extra(1)
thf(fact_1496_less__add__one,axiom,
    ! [A: code_natural] : ( ord_le5570908160329646204atural @ A @ ( plus_p4538020629002901425atural @ A @ one_one_Code_natural ) ) ).

% less_add_one
thf(fact_1497_less__add__one,axiom,
    ! [A: code_integer] : ( ord_le6747313008572928689nteger @ A @ ( plus_p5714425477246183910nteger @ A @ one_one_Code_integer ) ) ).

% less_add_one
thf(fact_1498_less__add__one,axiom,
    ! [A: rat] : ( ord_less_rat @ A @ ( plus_plus_rat @ A @ one_one_rat ) ) ).

% less_add_one
thf(fact_1499_less__add__one,axiom,
    ! [A: nat] : ( ord_less_nat @ A @ ( plus_plus_nat @ A @ one_one_nat ) ) ).

% less_add_one
thf(fact_1500_less__add__one,axiom,
    ! [A: int] : ( ord_less_int @ A @ ( plus_plus_int @ A @ one_one_int ) ) ).

% less_add_one
thf(fact_1501_add__mono1,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ord_le5570908160329646204atural @ ( plus_p4538020629002901425atural @ A @ one_one_Code_natural ) @ ( plus_p4538020629002901425atural @ B @ one_one_Code_natural ) ) ) ).

% add_mono1
thf(fact_1502_add__mono1,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ one_one_Code_integer ) @ ( plus_p5714425477246183910nteger @ B @ one_one_Code_integer ) ) ) ).

% add_mono1
thf(fact_1503_add__mono1,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ord_less_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( plus_plus_rat @ B @ one_one_rat ) ) ) ).

% add_mono1
thf(fact_1504_add__mono1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ A @ one_one_nat ) @ ( plus_plus_nat @ B @ one_one_nat ) ) ) ).

% add_mono1
thf(fact_1505_add__mono1,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( plus_plus_int @ A @ one_one_int ) @ ( plus_plus_int @ B @ one_one_int ) ) ) ).

% add_mono1
thf(fact_1506_floor__le__ceiling,axiom,
    ! [X2: rat] : ( ord_less_eq_int @ ( archim3151403230148437115or_rat @ X2 ) @ ( archim2889992004027027881ng_rat @ X2 ) ) ).

% floor_le_ceiling
thf(fact_1507_of__nat__less__0__iff,axiom,
    ! [M: nat] :
      ~ ( ord_less_int @ ( semiri1314217659103216013at_int @ M ) @ zero_zero_int ) ).

% of_nat_less_0_iff
thf(fact_1508_of__nat__less__0__iff,axiom,
    ! [M: nat] :
      ~ ( ord_less_nat @ ( semiri1316708129612266289at_nat @ M ) @ zero_zero_nat ) ).

% of_nat_less_0_iff
thf(fact_1509_of__nat__less__0__iff,axiom,
    ! [M: nat] :
      ~ ( ord_le6747313008572928689nteger @ ( semiri4939895301339042750nteger @ M ) @ zero_z3403309356797280102nteger ) ).

% of_nat_less_0_iff
thf(fact_1510_of__nat__less__0__iff,axiom,
    ! [M: nat] :
      ~ ( ord_less_rat @ ( semiri681578069525770553at_rat @ M ) @ zero_zero_rat ) ).

% of_nat_less_0_iff
thf(fact_1511_of__nat__less__0__iff,axiom,
    ! [M: nat] :
      ~ ( ord_le5570908160329646204atural @ ( semiri3763490453095760265atural @ M ) @ zero_z2226904508553997617atural ) ).

% of_nat_less_0_iff
thf(fact_1512_ex__least__nat__le,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K3: nat] :
            ( ( ord_less_eq_nat @ K3 @ N )
            & ! [I4: nat] :
                ( ( ord_less_nat @ I4 @ K3 )
               => ~ ( P @ I4 ) )
            & ( P @ K3 ) ) ) ) ).

% ex_least_nat_le
thf(fact_1513_less__imp__add__positive,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_nat @ I @ J )
     => ? [K3: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ K3 )
          & ( ( plus_plus_nat @ I @ K3 )
            = J ) ) ) ).

% less_imp_add_positive
thf(fact_1514_mono__nat__linear__lb,axiom,
    ! [F: nat > nat,M: nat,K: nat] :
      ( ! [M4: nat,N2: nat] :
          ( ( ord_less_nat @ M4 @ N2 )
         => ( ord_less_nat @ ( F @ M4 ) @ ( F @ N2 ) ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ ( F @ M ) @ K ) @ ( F @ ( plus_plus_nat @ M @ K ) ) ) ) ).

% mono_nat_linear_lb
thf(fact_1515_zless__add1__eq,axiom,
    ! [W2: int,Z2: int] :
      ( ( ord_less_int @ W2 @ ( plus_plus_int @ Z2 @ one_one_int ) )
      = ( ( ord_less_int @ W2 @ Z2 )
        | ( W2 = Z2 ) ) ) ).

% zless_add1_eq
thf(fact_1516_int__gr__induct,axiom,
    ! [K: int,I: int,P: int > $o] :
      ( ( ord_less_int @ K @ I )
     => ( ( P @ ( plus_plus_int @ K @ one_one_int ) )
       => ( ! [I3: int] :
              ( ( ord_less_int @ K @ I3 )
             => ( ( P @ I3 )
               => ( P @ ( plus_plus_int @ I3 @ one_one_int ) ) ) )
         => ( P @ I ) ) ) ) ).

% int_gr_induct
thf(fact_1517_power__int__0__left__If,axiom,
    ! [M: int] :
      ( ( ( M = zero_zero_int )
       => ( ( power_int_rat @ zero_zero_rat @ M )
          = one_one_rat ) )
      & ( ( M != zero_zero_int )
       => ( ( power_int_rat @ zero_zero_rat @ M )
          = zero_zero_rat ) ) ) ).

% power_int_0_left_If
thf(fact_1518_power__int__increasing,axiom,
    ! [N: int,N4: int,A: rat] :
      ( ( ord_less_eq_int @ N @ N4 )
     => ( ( ord_less_eq_rat @ one_one_rat @ A )
       => ( ord_less_eq_rat @ ( power_int_rat @ A @ N ) @ ( power_int_rat @ A @ N4 ) ) ) ) ).

% power_int_increasing
thf(fact_1519_le__floor__iff,axiom,
    ! [Z2: int,X2: rat] :
      ( ( ord_less_eq_int @ Z2 @ ( archim3151403230148437115or_rat @ X2 ) )
      = ( ord_less_eq_rat @ ( ring_1_of_int_rat @ Z2 ) @ X2 ) ) ).

% le_floor_iff
thf(fact_1520_le__floor__add,axiom,
    ! [X2: rat,Y: rat] : ( ord_less_eq_int @ ( plus_plus_int @ ( archim3151403230148437115or_rat @ X2 ) @ ( archim3151403230148437115or_rat @ Y ) ) @ ( archim3151403230148437115or_rat @ ( plus_plus_rat @ X2 @ Y ) ) ) ).

% le_floor_add
thf(fact_1521_int__add__floor,axiom,
    ! [Z2: int,X2: rat] :
      ( ( plus_plus_int @ Z2 @ ( archim3151403230148437115or_rat @ X2 ) )
      = ( archim3151403230148437115or_rat @ ( plus_plus_rat @ ( ring_1_of_int_rat @ Z2 ) @ X2 ) ) ) ).

% int_add_floor
thf(fact_1522_floor__add__int,axiom,
    ! [X2: rat,Z2: int] :
      ( ( plus_plus_int @ ( archim3151403230148437115or_rat @ X2 ) @ Z2 )
      = ( archim3151403230148437115or_rat @ ( plus_plus_rat @ X2 @ ( ring_1_of_int_rat @ Z2 ) ) ) ) ).

% floor_add_int
thf(fact_1523_nat__le__iff,axiom,
    ! [X2: int,N: nat] :
      ( ( ord_less_eq_nat @ ( nat2 @ X2 ) @ N )
      = ( ord_less_eq_int @ X2 @ ( semiri1314217659103216013at_int @ N ) ) ) ).

% nat_le_iff
thf(fact_1524_nat__0__le,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
     => ( ( semiri1314217659103216013at_int @ ( nat2 @ Z2 ) )
        = Z2 ) ) ).

% nat_0_le
thf(fact_1525_int__eq__iff,axiom,
    ! [M: nat,Z2: int] :
      ( ( ( semiri1314217659103216013at_int @ M )
        = Z2 )
      = ( ( M
          = ( nat2 @ Z2 ) )
        & ( ord_less_eq_int @ zero_zero_int @ Z2 ) ) ) ).

% int_eq_iff
thf(fact_1526_of__nat__ceiling,axiom,
    ! [R: rat] : ( ord_less_eq_rat @ R @ ( semiri681578069525770553at_rat @ ( nat2 @ ( archim2889992004027027881ng_rat @ R ) ) ) ) ).

% of_nat_ceiling
thf(fact_1527_nat__int__add,axiom,
    ! [A: nat,B: nat] :
      ( ( nat2 @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) )
      = ( plus_plus_nat @ A @ B ) ) ).

% nat_int_add
thf(fact_1528_add__neg__nonpos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ zero_z2226904508553997617atural )
     => ( ( ord_le1926595141338095240atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le5570908160329646204atural @ ( plus_p4538020629002901425atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% add_neg_nonpos
thf(fact_1529_add__neg__nonpos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% add_neg_nonpos
thf(fact_1530_add__neg__nonpos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ B @ zero_zero_rat )
       => ( ord_less_rat @ ( plus_plus_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% add_neg_nonpos
thf(fact_1531_add__neg__nonpos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_neg_nonpos
thf(fact_1532_add__neg__nonpos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( ord_less_eq_int @ B @ zero_zero_int )
       => ( ord_less_int @ ( plus_plus_int @ A @ B ) @ zero_zero_int ) ) ) ).

% add_neg_nonpos
thf(fact_1533_add__nonneg__pos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( plus_p4538020629002901425atural @ A @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_1534_add__nonneg__pos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ A @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_1535_add__nonneg__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ zero_zero_rat @ B )
       => ( ord_less_rat @ zero_zero_rat @ ( plus_plus_rat @ A @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_1536_add__nonneg__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_1537_add__nonneg__pos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ A @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_1538_add__nonpos__neg,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ zero_z2226904508553997617atural )
     => ( ( ord_le5570908160329646204atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le5570908160329646204atural @ ( plus_p4538020629002901425atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% add_nonpos_neg
thf(fact_1539_add__nonpos__neg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le6747313008572928689nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% add_nonpos_neg
thf(fact_1540_add__nonpos__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ zero_zero_rat )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ord_less_rat @ ( plus_plus_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% add_nonpos_neg
thf(fact_1541_add__nonpos__neg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_nonpos_neg
thf(fact_1542_add__nonpos__neg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_int @ ( plus_plus_int @ A @ B ) @ zero_zero_int ) ) ) ).

% add_nonpos_neg
thf(fact_1543_add__pos__nonneg,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( plus_p4538020629002901425atural @ A @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_1544_add__pos__nonneg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ A @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_1545_add__pos__nonneg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_rat @ zero_zero_rat @ ( plus_plus_rat @ A @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_1546_add__pos__nonneg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_1547_add__pos__nonneg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ A @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_1548_add__strict__increasing,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ B @ C )
       => ( ord_le5570908160329646204atural @ B @ ( plus_p4538020629002901425atural @ A @ C ) ) ) ) ).

% add_strict_increasing
thf(fact_1549_add__strict__increasing,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ B @ C )
       => ( ord_le6747313008572928689nteger @ B @ ( plus_p5714425477246183910nteger @ A @ C ) ) ) ) ).

% add_strict_increasing
thf(fact_1550_add__strict__increasing,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ B @ C )
       => ( ord_less_rat @ B @ ( plus_plus_rat @ A @ C ) ) ) ) ).

% add_strict_increasing
thf(fact_1551_add__strict__increasing,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_strict_increasing
thf(fact_1552_add__strict__increasing,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ B @ C )
       => ( ord_less_int @ B @ ( plus_plus_int @ A @ C ) ) ) ) ).

% add_strict_increasing
thf(fact_1553_add__strict__increasing2,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ B @ C )
       => ( ord_le5570908160329646204atural @ B @ ( plus_p4538020629002901425atural @ A @ C ) ) ) ) ).

% add_strict_increasing2
thf(fact_1554_add__strict__increasing2,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ B @ C )
       => ( ord_le6747313008572928689nteger @ B @ ( plus_p5714425477246183910nteger @ A @ C ) ) ) ) ).

% add_strict_increasing2
thf(fact_1555_add__strict__increasing2,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ B @ C )
       => ( ord_less_rat @ B @ ( plus_plus_rat @ A @ C ) ) ) ) ).

% add_strict_increasing2
thf(fact_1556_add__strict__increasing2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_strict_increasing2
thf(fact_1557_add__strict__increasing2,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ B @ C )
       => ( ord_less_int @ B @ ( plus_plus_int @ A @ C ) ) ) ) ).

% add_strict_increasing2
thf(fact_1558_zero__less__two,axiom,
    ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( plus_p4538020629002901425atural @ one_one_Code_natural @ one_one_Code_natural ) ).

% zero_less_two
thf(fact_1559_zero__less__two,axiom,
    ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ one_one_Code_integer @ one_one_Code_integer ) ).

% zero_less_two
thf(fact_1560_zero__less__two,axiom,
    ord_less_rat @ zero_zero_rat @ ( plus_plus_rat @ one_one_rat @ one_one_rat ) ).

% zero_less_two
thf(fact_1561_zero__less__two,axiom,
    ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ one_one_nat @ one_one_nat ) ).

% zero_less_two
thf(fact_1562_zero__less__two,axiom,
    ord_less_int @ zero_zero_int @ ( plus_plus_int @ one_one_int @ one_one_int ) ).

% zero_less_two
thf(fact_1563_int__one__le__iff__zero__less,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ one_one_int @ Z2 )
      = ( ord_less_int @ zero_zero_int @ Z2 ) ) ).

% int_one_le_iff_zero_less
thf(fact_1564_odd__less__0__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_int @ ( plus_plus_int @ ( plus_plus_int @ one_one_int @ Z2 ) @ Z2 ) @ zero_zero_int )
      = ( ord_less_int @ Z2 @ zero_zero_int ) ) ).

% odd_less_0_iff
thf(fact_1565_add1__zle__eq,axiom,
    ! [W2: int,Z2: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ W2 @ one_one_int ) @ Z2 )
      = ( ord_less_int @ W2 @ Z2 ) ) ).

% add1_zle_eq
thf(fact_1566_zless__imp__add1__zle,axiom,
    ! [W2: int,Z2: int] :
      ( ( ord_less_int @ W2 @ Z2 )
     => ( ord_less_eq_int @ ( plus_plus_int @ W2 @ one_one_int ) @ Z2 ) ) ).

% zless_imp_add1_zle
thf(fact_1567_nat__plus__as__int,axiom,
    ( plus_plus_nat
    = ( ^ [A2: nat,B2: nat] : ( nat2 @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ A2 ) @ ( semiri1314217659103216013at_int @ B2 ) ) ) ) ) ).

% nat_plus_as_int
thf(fact_1568_power__int__mono,axiom,
    ! [X2: rat,Y: rat,N: int] :
      ( ( ord_less_eq_rat @ X2 @ Y )
     => ( ( ord_less_eq_int @ zero_zero_int @ N )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ X2 )
         => ( ord_less_eq_rat @ ( power_int_rat @ X2 @ N ) @ ( power_int_rat @ Y @ N ) ) ) ) ) ).

% power_int_mono
thf(fact_1569_one__le__power__int,axiom,
    ! [X2: rat,N: int] :
      ( ( ord_less_eq_rat @ one_one_rat @ X2 )
     => ( ( ord_less_eq_int @ zero_zero_int @ N )
       => ( ord_less_eq_rat @ one_one_rat @ ( power_int_rat @ X2 @ N ) ) ) ) ).

% one_le_power_int
thf(fact_1570_one__add__floor,axiom,
    ! [X2: rat] :
      ( ( plus_plus_int @ ( archim3151403230148437115or_rat @ X2 ) @ one_one_int )
      = ( archim3151403230148437115or_rat @ ( plus_plus_rat @ X2 @ one_one_rat ) ) ) ).

% one_add_floor
thf(fact_1571_nat__eq__iff2,axiom,
    ! [M: nat,W2: int] :
      ( ( M
        = ( nat2 @ W2 ) )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ W2 )
         => ( W2
            = ( semiri1314217659103216013at_int @ M ) ) )
        & ( ~ ( ord_less_eq_int @ zero_zero_int @ W2 )
         => ( M = zero_zero_nat ) ) ) ) ).

% nat_eq_iff2
thf(fact_1572_nat__eq__iff,axiom,
    ! [W2: int,M: nat] :
      ( ( ( nat2 @ W2 )
        = M )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ W2 )
         => ( W2
            = ( semiri1314217659103216013at_int @ M ) ) )
        & ( ~ ( ord_less_eq_int @ zero_zero_int @ W2 )
         => ( M = zero_zero_nat ) ) ) ) ).

% nat_eq_iff
thf(fact_1573_le__nat__iff,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ( ( ord_less_eq_nat @ N @ ( nat2 @ K ) )
        = ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ N ) @ K ) ) ) ).

% le_nat_iff
thf(fact_1574_nat__add__distrib,axiom,
    ! [Z2: int,Z6: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
     => ( ( ord_less_eq_int @ zero_zero_int @ Z6 )
       => ( ( nat2 @ ( plus_plus_int @ Z2 @ Z6 ) )
          = ( plus_plus_nat @ ( nat2 @ Z2 ) @ ( nat2 @ Z6 ) ) ) ) ) ).

% nat_add_distrib
thf(fact_1575_ceiling__altdef,axiom,
    ( archim2889992004027027881ng_rat
    = ( ^ [X: rat] :
          ( if_int
          @ ( X
            = ( ring_1_of_int_rat @ ( archim3151403230148437115or_rat @ X ) ) )
          @ ( archim3151403230148437115or_rat @ X )
          @ ( plus_plus_int @ ( archim3151403230148437115or_rat @ X ) @ one_one_int ) ) ) ) ).

% ceiling_altdef
thf(fact_1576_floor__exists,axiom,
    ! [X2: rat] :
    ? [Z4: int] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ Z4 ) @ X2 )
      & ( ord_less_rat @ X2 @ ( ring_1_of_int_rat @ ( plus_plus_int @ Z4 @ one_one_int ) ) ) ) ).

% floor_exists
thf(fact_1577_floor__exists1,axiom,
    ! [X2: rat] :
    ? [X3: int] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ X3 ) @ X2 )
      & ( ord_less_rat @ X2 @ ( ring_1_of_int_rat @ ( plus_plus_int @ X3 @ one_one_int ) ) )
      & ! [Y5: int] :
          ( ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ Y5 ) @ X2 )
            & ( ord_less_rat @ X2 @ ( ring_1_of_int_rat @ ( plus_plus_int @ Y5 @ one_one_int ) ) ) )
         => ( Y5 = X3 ) ) ) ).

% floor_exists1
thf(fact_1578_discrete,axiom,
    ( ord_le6747313008572928689nteger
    = ( ^ [A2: code_integer] : ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A2 @ one_one_Code_integer ) ) ) ) ).

% discrete
thf(fact_1579_discrete,axiom,
    ( ord_less_nat
    = ( ^ [A2: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ A2 @ one_one_nat ) ) ) ) ).

% discrete
thf(fact_1580_discrete,axiom,
    ( ord_less_int
    = ( ^ [A2: int] : ( ord_less_eq_int @ ( plus_plus_int @ A2 @ one_one_int ) ) ) ) ).

% discrete
thf(fact_1581_field__le__epsilon,axiom,
    ! [X2: rat,Y: rat] :
      ( ! [E3: rat] :
          ( ( ord_less_rat @ zero_zero_rat @ E3 )
         => ( ord_less_eq_rat @ X2 @ ( plus_plus_rat @ Y @ E3 ) ) )
     => ( ord_less_eq_rat @ X2 @ Y ) ) ).

% field_le_epsilon
thf(fact_1582_floor__add,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ( ord_less_rat @ ( plus_plus_rat @ ( archimedean_frac_rat @ X2 ) @ ( archimedean_frac_rat @ Y ) ) @ one_one_rat )
       => ( ( archim3151403230148437115or_rat @ ( plus_plus_rat @ X2 @ Y ) )
          = ( plus_plus_int @ ( archim3151403230148437115or_rat @ X2 ) @ ( archim3151403230148437115or_rat @ Y ) ) ) )
      & ( ~ ( ord_less_rat @ ( plus_plus_rat @ ( archimedean_frac_rat @ X2 ) @ ( archimedean_frac_rat @ Y ) ) @ one_one_rat )
       => ( ( archim3151403230148437115or_rat @ ( plus_plus_rat @ X2 @ Y ) )
          = ( plus_plus_int @ ( plus_plus_int @ ( archim3151403230148437115or_rat @ X2 ) @ ( archim3151403230148437115or_rat @ Y ) ) @ one_one_int ) ) ) ) ).

% floor_add
thf(fact_1583_complete__interval,axiom,
    ! [A: nat,B: nat,P: nat > $o] :
      ( ( ord_less_nat @ A @ B )
     => ( ( P @ A )
       => ( ~ ( P @ B )
         => ? [C3: nat] :
              ( ( ord_less_eq_nat @ A @ C3 )
              & ( ord_less_eq_nat @ C3 @ B )
              & ! [X4: nat] :
                  ( ( ( ord_less_eq_nat @ A @ X4 )
                    & ( ord_less_nat @ X4 @ C3 ) )
                 => ( P @ X4 ) )
              & ! [D2: nat] :
                  ( ! [X3: nat] :
                      ( ( ( ord_less_eq_nat @ A @ X3 )
                        & ( ord_less_nat @ X3 @ D2 ) )
                     => ( P @ X3 ) )
                 => ( ord_less_eq_nat @ D2 @ C3 ) ) ) ) ) ) ).

% complete_interval
thf(fact_1584_complete__interval,axiom,
    ! [A: int,B: int,P: int > $o] :
      ( ( ord_less_int @ A @ B )
     => ( ( P @ A )
       => ( ~ ( P @ B )
         => ? [C3: int] :
              ( ( ord_less_eq_int @ A @ C3 )
              & ( ord_less_eq_int @ C3 @ B )
              & ! [X4: int] :
                  ( ( ( ord_less_eq_int @ A @ X4 )
                    & ( ord_less_int @ X4 @ C3 ) )
                 => ( P @ X4 ) )
              & ! [D2: int] :
                  ( ! [X3: int] :
                      ( ( ( ord_less_eq_int @ A @ X3 )
                        & ( ord_less_int @ X3 @ D2 ) )
                     => ( P @ X3 ) )
                 => ( ord_less_eq_int @ D2 @ C3 ) ) ) ) ) ) ).

% complete_interval
thf(fact_1585_zero__le__ceiling,axiom,
    ! [X2: rat] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( archim2889992004027027881ng_rat @ X2 ) )
      = ( ord_less_rat @ ( uminus_uminus_rat @ one_one_rat ) @ X2 ) ) ).

% zero_le_ceiling
thf(fact_1586_ceiling__less__zero,axiom,
    ! [X2: rat] :
      ( ( ord_less_int @ ( archim2889992004027027881ng_rat @ X2 ) @ zero_zero_int )
      = ( ord_less_eq_rat @ X2 @ ( uminus_uminus_rat @ one_one_rat ) ) ) ).

% ceiling_less_zero
thf(fact_1587_time__array__of__list,axiom,
    ! [Xs: list_nat,H: heap_e7401611519738050253t_unit] :
      ( ( time_time_array_nat @ ( array_of_list_nat @ Xs ) @ H )
      = ( plus_plus_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat ) ) ).

% time_array_of_list
thf(fact_1588_time__array__of__list,axiom,
    ! [Xs: list_int,H: heap_e7401611519738050253t_unit] :
      ( ( time_time_array_int @ ( array_of_list_int @ Xs ) @ H )
      = ( plus_plus_nat @ ( size_size_list_int @ Xs ) @ one_one_nat ) ) ).

% time_array_of_list
thf(fact_1589_time__array__of__list,axiom,
    ! [Xs: list_o,H: heap_e7401611519738050253t_unit] :
      ( ( time_time_array_o @ ( array_of_list_o @ Xs ) @ H )
      = ( plus_plus_nat @ ( size_size_list_o @ Xs ) @ one_one_nat ) ) ).

% time_array_of_list
thf(fact_1590_Suc__nat__eq__nat__zadd1,axiom,
    ! [Z2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
     => ( ( suc @ ( nat2 @ Z2 ) )
        = ( nat2 @ ( plus_plus_int @ one_one_int @ Z2 ) ) ) ) ).

% Suc_nat_eq_nat_zadd1
thf(fact_1591_gen__length__def,axiom,
    ( gen_length_nat
    = ( ^ [N3: nat,Xs3: list_nat] : ( plus_plus_nat @ N3 @ ( size_size_list_nat @ Xs3 ) ) ) ) ).

% gen_length_def
thf(fact_1592_gen__length__def,axiom,
    ( gen_length_int
    = ( ^ [N3: nat,Xs3: list_int] : ( plus_plus_nat @ N3 @ ( size_size_list_int @ Xs3 ) ) ) ) ).

% gen_length_def
thf(fact_1593_gen__length__def,axiom,
    ( gen_length_o
    = ( ^ [N3: nat,Xs3: list_o] : ( plus_plus_nat @ N3 @ ( size_size_list_o @ Xs3 ) ) ) ) ).

% gen_length_def
thf(fact_1594_verit__minus__simplify_I4_J,axiom,
    ! [B: int] :
      ( ( uminus_uminus_int @ ( uminus_uminus_int @ B ) )
      = B ) ).

% verit_minus_simplify(4)
thf(fact_1595_verit__minus__simplify_I4_J,axiom,
    ! [B: code_integer] :
      ( ( uminus1351360451143612070nteger @ ( uminus1351360451143612070nteger @ B ) )
      = B ) ).

% verit_minus_simplify(4)
thf(fact_1596_verit__minus__simplify_I4_J,axiom,
    ! [B: rat] :
      ( ( uminus_uminus_rat @ ( uminus_uminus_rat @ B ) )
      = B ) ).

% verit_minus_simplify(4)
thf(fact_1597_neg__equal__iff__equal,axiom,
    ! [A: int,B: int] :
      ( ( ( uminus_uminus_int @ A )
        = ( uminus_uminus_int @ B ) )
      = ( A = B ) ) ).

% neg_equal_iff_equal
thf(fact_1598_neg__equal__iff__equal,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( uminus1351360451143612070nteger @ A )
        = ( uminus1351360451143612070nteger @ B ) )
      = ( A = B ) ) ).

% neg_equal_iff_equal
thf(fact_1599_neg__equal__iff__equal,axiom,
    ! [A: rat,B: rat] :
      ( ( ( uminus_uminus_rat @ A )
        = ( uminus_uminus_rat @ B ) )
      = ( A = B ) ) ).

% neg_equal_iff_equal
thf(fact_1600_add_Oinverse__inverse,axiom,
    ! [A: int] :
      ( ( uminus_uminus_int @ ( uminus_uminus_int @ A ) )
      = A ) ).

% add.inverse_inverse
thf(fact_1601_add_Oinverse__inverse,axiom,
    ! [A: code_integer] :
      ( ( uminus1351360451143612070nteger @ ( uminus1351360451143612070nteger @ A ) )
      = A ) ).

% add.inverse_inverse
thf(fact_1602_add_Oinverse__inverse,axiom,
    ! [A: rat] :
      ( ( uminus_uminus_rat @ ( uminus_uminus_rat @ A ) )
      = A ) ).

% add.inverse_inverse
thf(fact_1603_old_Onat_Oinject,axiom,
    ! [Nat: nat,Nat2: nat] :
      ( ( ( suc @ Nat )
        = ( suc @ Nat2 ) )
      = ( Nat = Nat2 ) ) ).

% old.nat.inject
thf(fact_1604_nat_Oinject,axiom,
    ! [X22: nat,Y22: nat] :
      ( ( ( suc @ X22 )
        = ( suc @ Y22 ) )
      = ( X22 = Y22 ) ) ).

% nat.inject
thf(fact_1605_neg__le__iff__le,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ B ) @ ( uminus1351360451143612070nteger @ A ) )
      = ( ord_le3102999989581377725nteger @ A @ B ) ) ).

% neg_le_iff_le
thf(fact_1606_neg__le__iff__le,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ B ) @ ( uminus_uminus_rat @ A ) )
      = ( ord_less_eq_rat @ A @ B ) ) ).

% neg_le_iff_le
thf(fact_1607_neg__le__iff__le,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) )
      = ( ord_less_eq_int @ A @ B ) ) ).

% neg_le_iff_le
thf(fact_1608_add_Oinverse__neutral,axiom,
    ( ( uminus_uminus_int @ zero_zero_int )
    = zero_zero_int ) ).

% add.inverse_neutral
thf(fact_1609_add_Oinverse__neutral,axiom,
    ( ( uminus1351360451143612070nteger @ zero_z3403309356797280102nteger )
    = zero_z3403309356797280102nteger ) ).

% add.inverse_neutral
thf(fact_1610_add_Oinverse__neutral,axiom,
    ( ( uminus_uminus_rat @ zero_zero_rat )
    = zero_zero_rat ) ).

% add.inverse_neutral
thf(fact_1611_neg__0__equal__iff__equal,axiom,
    ! [A: int] :
      ( ( zero_zero_int
        = ( uminus_uminus_int @ A ) )
      = ( zero_zero_int = A ) ) ).

% neg_0_equal_iff_equal
thf(fact_1612_neg__0__equal__iff__equal,axiom,
    ! [A: code_integer] :
      ( ( zero_z3403309356797280102nteger
        = ( uminus1351360451143612070nteger @ A ) )
      = ( zero_z3403309356797280102nteger = A ) ) ).

% neg_0_equal_iff_equal
thf(fact_1613_neg__0__equal__iff__equal,axiom,
    ! [A: rat] :
      ( ( zero_zero_rat
        = ( uminus_uminus_rat @ A ) )
      = ( zero_zero_rat = A ) ) ).

% neg_0_equal_iff_equal
thf(fact_1614_neg__equal__0__iff__equal,axiom,
    ! [A: int] :
      ( ( ( uminus_uminus_int @ A )
        = zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% neg_equal_0_iff_equal
thf(fact_1615_neg__equal__0__iff__equal,axiom,
    ! [A: code_integer] :
      ( ( ( uminus1351360451143612070nteger @ A )
        = zero_z3403309356797280102nteger )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% neg_equal_0_iff_equal
thf(fact_1616_neg__equal__0__iff__equal,axiom,
    ! [A: rat] :
      ( ( ( uminus_uminus_rat @ A )
        = zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% neg_equal_0_iff_equal
thf(fact_1617_equal__neg__zero,axiom,
    ! [A: int] :
      ( ( A
        = ( uminus_uminus_int @ A ) )
      = ( A = zero_zero_int ) ) ).

% equal_neg_zero
thf(fact_1618_equal__neg__zero,axiom,
    ! [A: code_integer] :
      ( ( A
        = ( uminus1351360451143612070nteger @ A ) )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% equal_neg_zero
thf(fact_1619_equal__neg__zero,axiom,
    ! [A: rat] :
      ( ( A
        = ( uminus_uminus_rat @ A ) )
      = ( A = zero_zero_rat ) ) ).

% equal_neg_zero
thf(fact_1620_neg__equal__zero,axiom,
    ! [A: int] :
      ( ( ( uminus_uminus_int @ A )
        = A )
      = ( A = zero_zero_int ) ) ).

% neg_equal_zero
thf(fact_1621_neg__equal__zero,axiom,
    ! [A: code_integer] :
      ( ( ( uminus1351360451143612070nteger @ A )
        = A )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% neg_equal_zero
thf(fact_1622_neg__equal__zero,axiom,
    ! [A: rat] :
      ( ( ( uminus_uminus_rat @ A )
        = A )
      = ( A = zero_zero_rat ) ) ).

% neg_equal_zero
thf(fact_1623_neg__less__iff__less,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) )
      = ( ord_less_int @ A @ B ) ) ).

% neg_less_iff_less
thf(fact_1624_neg__less__iff__less,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ B ) @ ( uminus1351360451143612070nteger @ A ) )
      = ( ord_le6747313008572928689nteger @ A @ B ) ) ).

% neg_less_iff_less
thf(fact_1625_neg__less__iff__less,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_rat @ ( uminus_uminus_rat @ B ) @ ( uminus_uminus_rat @ A ) )
      = ( ord_less_rat @ A @ B ) ) ).

% neg_less_iff_less
thf(fact_1626_minus__add__distrib,axiom,
    ! [A: int,B: int] :
      ( ( uminus_uminus_int @ ( plus_plus_int @ A @ B ) )
      = ( plus_plus_int @ ( uminus_uminus_int @ A ) @ ( uminus_uminus_int @ B ) ) ) ).

% minus_add_distrib
thf(fact_1627_minus__add__distrib,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( uminus1351360451143612070nteger @ ( plus_p5714425477246183910nteger @ A @ B ) )
      = ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ A ) @ ( uminus1351360451143612070nteger @ B ) ) ) ).

% minus_add_distrib
thf(fact_1628_minus__add__distrib,axiom,
    ! [A: rat,B: rat] :
      ( ( uminus_uminus_rat @ ( plus_plus_rat @ A @ B ) )
      = ( plus_plus_rat @ ( uminus_uminus_rat @ A ) @ ( uminus_uminus_rat @ B ) ) ) ).

% minus_add_distrib
thf(fact_1629_minus__add__cancel,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ A ) @ ( plus_plus_int @ A @ B ) )
      = B ) ).

% minus_add_cancel
thf(fact_1630_minus__add__cancel,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ A ) @ ( plus_p5714425477246183910nteger @ A @ B ) )
      = B ) ).

% minus_add_cancel
thf(fact_1631_minus__add__cancel,axiom,
    ! [A: rat,B: rat] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ A ) @ ( plus_plus_rat @ A @ B ) )
      = B ) ).

% minus_add_cancel
thf(fact_1632_add__minus__cancel,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ A @ ( plus_plus_int @ ( uminus_uminus_int @ A ) @ B ) )
      = B ) ).

% add_minus_cancel
thf(fact_1633_add__minus__cancel,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( plus_p5714425477246183910nteger @ A @ ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ A ) @ B ) )
      = B ) ).

% add_minus_cancel
thf(fact_1634_add__minus__cancel,axiom,
    ! [A: rat,B: rat] :
      ( ( plus_plus_rat @ A @ ( plus_plus_rat @ ( uminus_uminus_rat @ A ) @ B ) )
      = B ) ).

% add_minus_cancel
thf(fact_1635_lessI,axiom,
    ! [N: nat] : ( ord_less_nat @ N @ ( suc @ N ) ) ).

% lessI
thf(fact_1636_Suc__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) ) ) ).

% Suc_mono
thf(fact_1637_Suc__less__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% Suc_less_eq
thf(fact_1638_Suc__le__mono,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( suc @ M ) )
      = ( ord_less_eq_nat @ N @ M ) ) ).

% Suc_le_mono
thf(fact_1639_add__Suc__right,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ M @ ( suc @ N ) )
      = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).

% add_Suc_right
thf(fact_1640_negative__eq__positive,axiom,
    ! [N: nat,M: nat] :
      ( ( ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) )
        = ( semiri1314217659103216013at_int @ M ) )
      = ( ( N = zero_zero_nat )
        & ( M = zero_zero_nat ) ) ) ).

% negative_eq_positive
thf(fact_1641_of__int__minus,axiom,
    ! [Z2: int] :
      ( ( ring_1_of_int_int @ ( uminus_uminus_int @ Z2 ) )
      = ( uminus_uminus_int @ ( ring_1_of_int_int @ Z2 ) ) ) ).

% of_int_minus
thf(fact_1642_of__int__minus,axiom,
    ! [Z2: int] :
      ( ( ring_18347121197199848620nteger @ ( uminus_uminus_int @ Z2 ) )
      = ( uminus1351360451143612070nteger @ ( ring_18347121197199848620nteger @ Z2 ) ) ) ).

% of_int_minus
thf(fact_1643_of__int__minus,axiom,
    ! [Z2: int] :
      ( ( ring_1_of_int_rat @ ( uminus_uminus_int @ Z2 ) )
      = ( uminus_uminus_rat @ ( ring_1_of_int_rat @ Z2 ) ) ) ).

% of_int_minus
thf(fact_1644_negative__zle,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) @ ( semiri1314217659103216013at_int @ M ) ) ).

% negative_zle
thf(fact_1645_neg__less__eq__nonneg,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ A ) @ A )
      = ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% neg_less_eq_nonneg
thf(fact_1646_neg__less__eq__nonneg,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ A ) @ A )
      = ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ).

% neg_less_eq_nonneg
thf(fact_1647_neg__less__eq__nonneg,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ A )
      = ( ord_less_eq_int @ zero_zero_int @ A ) ) ).

% neg_less_eq_nonneg
thf(fact_1648_less__eq__neg__nonpos,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ ( uminus1351360451143612070nteger @ A ) )
      = ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% less_eq_neg_nonpos
thf(fact_1649_less__eq__neg__nonpos,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ A @ ( uminus_uminus_rat @ A ) )
      = ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ).

% less_eq_neg_nonpos
thf(fact_1650_less__eq__neg__nonpos,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ A @ ( uminus_uminus_int @ A ) )
      = ( ord_less_eq_int @ A @ zero_zero_int ) ) ).

% less_eq_neg_nonpos
thf(fact_1651_neg__le__0__iff__le,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ A ) @ zero_z3403309356797280102nteger )
      = ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% neg_le_0_iff_le
thf(fact_1652_neg__le__0__iff__le,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ A ) @ zero_zero_rat )
      = ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ).

% neg_le_0_iff_le
thf(fact_1653_neg__le__0__iff__le,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ zero_zero_int )
      = ( ord_less_eq_int @ zero_zero_int @ A ) ) ).

% neg_le_0_iff_le
thf(fact_1654_neg__0__le__iff__le,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( uminus1351360451143612070nteger @ A ) )
      = ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% neg_0_le_iff_le
thf(fact_1655_neg__0__le__iff__le,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( uminus_uminus_rat @ A ) )
      = ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ).

% neg_0_le_iff_le
thf(fact_1656_neg__0__le__iff__le,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( uminus_uminus_int @ A ) )
      = ( ord_less_eq_int @ A @ zero_zero_int ) ) ).

% neg_0_le_iff_le
thf(fact_1657_neg__less__0__iff__less,axiom,
    ! [A: int] :
      ( ( ord_less_int @ ( uminus_uminus_int @ A ) @ zero_zero_int )
      = ( ord_less_int @ zero_zero_int @ A ) ) ).

% neg_less_0_iff_less
thf(fact_1658_neg__less__0__iff__less,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ A ) @ zero_z3403309356797280102nteger )
      = ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% neg_less_0_iff_less
thf(fact_1659_neg__less__0__iff__less,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ ( uminus_uminus_rat @ A ) @ zero_zero_rat )
      = ( ord_less_rat @ zero_zero_rat @ A ) ) ).

% neg_less_0_iff_less
thf(fact_1660_neg__0__less__iff__less,axiom,
    ! [A: int] :
      ( ( ord_less_int @ zero_zero_int @ ( uminus_uminus_int @ A ) )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% neg_0_less_iff_less
thf(fact_1661_neg__0__less__iff__less,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( uminus1351360451143612070nteger @ A ) )
      = ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% neg_0_less_iff_less
thf(fact_1662_neg__0__less__iff__less,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( uminus_uminus_rat @ A ) )
      = ( ord_less_rat @ A @ zero_zero_rat ) ) ).

% neg_0_less_iff_less
thf(fact_1663_neg__less__pos,axiom,
    ! [A: int] :
      ( ( ord_less_int @ ( uminus_uminus_int @ A ) @ A )
      = ( ord_less_int @ zero_zero_int @ A ) ) ).

% neg_less_pos
thf(fact_1664_neg__less__pos,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ A ) @ A )
      = ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% neg_less_pos
thf(fact_1665_neg__less__pos,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ ( uminus_uminus_rat @ A ) @ A )
      = ( ord_less_rat @ zero_zero_rat @ A ) ) ).

% neg_less_pos
thf(fact_1666_less__neg__neg,axiom,
    ! [A: int] :
      ( ( ord_less_int @ A @ ( uminus_uminus_int @ A ) )
      = ( ord_less_int @ A @ zero_zero_int ) ) ).

% less_neg_neg
thf(fact_1667_less__neg__neg,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ ( uminus1351360451143612070nteger @ A ) )
      = ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ).

% less_neg_neg
thf(fact_1668_less__neg__neg,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ A @ ( uminus_uminus_rat @ A ) )
      = ( ord_less_rat @ A @ zero_zero_rat ) ) ).

% less_neg_neg
thf(fact_1669_ab__left__minus,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ A ) @ A )
      = zero_zero_int ) ).

% ab_left_minus
thf(fact_1670_ab__left__minus,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ A ) @ A )
      = zero_z3403309356797280102nteger ) ).

% ab_left_minus
thf(fact_1671_ab__left__minus,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ A ) @ A )
      = zero_zero_rat ) ).

% ab_left_minus
thf(fact_1672_add_Oright__inverse,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ A @ ( uminus_uminus_int @ A ) )
      = zero_zero_int ) ).

% add.right_inverse
thf(fact_1673_add_Oright__inverse,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ A @ ( uminus1351360451143612070nteger @ A ) )
      = zero_z3403309356797280102nteger ) ).

% add.right_inverse
thf(fact_1674_add_Oright__inverse,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ A @ ( uminus_uminus_rat @ A ) )
      = zero_zero_rat ) ).

% add.right_inverse
thf(fact_1675_zero__less__Suc,axiom,
    ! [N: nat] : ( ord_less_nat @ zero_zero_nat @ ( suc @ N ) ) ).

% zero_less_Suc
thf(fact_1676_less__Suc0,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( N = zero_zero_nat ) ) ).

% less_Suc0
thf(fact_1677_negative__zless,axiom,
    ! [N: nat,M: nat] : ( ord_less_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N ) ) ) @ ( semiri1314217659103216013at_int @ M ) ) ).

% negative_zless
thf(fact_1678_nat__zminus__int,axiom,
    ! [N: nat] :
      ( ( nat2 @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) )
      = zero_zero_nat ) ).

% nat_zminus_int
thf(fact_1679_floor__uminus__of__int,axiom,
    ! [Z2: int] :
      ( ( archim3151403230148437115or_rat @ ( uminus_uminus_rat @ ( ring_1_of_int_rat @ Z2 ) ) )
      = ( uminus_uminus_int @ Z2 ) ) ).

% floor_uminus_of_int
thf(fact_1680_frac__of__int,axiom,
    ! [Z2: int] :
      ( ( archimedean_frac_rat @ ( ring_1_of_int_rat @ Z2 ) )
      = zero_zero_rat ) ).

% frac_of_int
thf(fact_1681_dbl__inc__simps_I4_J,axiom,
    ( ( neg_nu5851722552734809277nc_int @ ( uminus_uminus_int @ one_one_int ) )
    = ( uminus_uminus_int @ one_one_int ) ) ).

% dbl_inc_simps(4)
thf(fact_1682_dbl__inc__simps_I4_J,axiom,
    ( ( neg_nu5831290666863070958nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
    = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% dbl_inc_simps(4)
thf(fact_1683_dbl__inc__simps_I4_J,axiom,
    ( ( neg_nu5219082963157363817nc_rat @ ( uminus_uminus_rat @ one_one_rat ) )
    = ( uminus_uminus_rat @ one_one_rat ) ) ).

% dbl_inc_simps(4)
thf(fact_1684_add__neg__numeral__special_I8_J,axiom,
    ( ( plus_plus_int @ ( uminus_uminus_int @ one_one_int ) @ one_one_int )
    = zero_zero_int ) ).

% add_neg_numeral_special(8)
thf(fact_1685_add__neg__numeral__special_I8_J,axiom,
    ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ one_one_Code_integer )
    = zero_z3403309356797280102nteger ) ).

% add_neg_numeral_special(8)
thf(fact_1686_add__neg__numeral__special_I8_J,axiom,
    ( ( plus_plus_rat @ ( uminus_uminus_rat @ one_one_rat ) @ one_one_rat )
    = zero_zero_rat ) ).

% add_neg_numeral_special(8)
thf(fact_1687_add__neg__numeral__special_I7_J,axiom,
    ( ( plus_plus_int @ one_one_int @ ( uminus_uminus_int @ one_one_int ) )
    = zero_zero_int ) ).

% add_neg_numeral_special(7)
thf(fact_1688_add__neg__numeral__special_I7_J,axiom,
    ( ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
    = zero_z3403309356797280102nteger ) ).

% add_neg_numeral_special(7)
thf(fact_1689_add__neg__numeral__special_I7_J,axiom,
    ( ( plus_plus_rat @ one_one_rat @ ( uminus_uminus_rat @ one_one_rat ) )
    = zero_zero_rat ) ).

% add_neg_numeral_special(7)
thf(fact_1690_of__nat__Suc,axiom,
    ! [M: nat] :
      ( ( semiri1314217659103216013at_int @ ( suc @ M ) )
      = ( plus_plus_int @ one_one_int @ ( semiri1314217659103216013at_int @ M ) ) ) ).

% of_nat_Suc
thf(fact_1691_of__nat__Suc,axiom,
    ! [M: nat] :
      ( ( semiri1316708129612266289at_nat @ ( suc @ M ) )
      = ( plus_plus_nat @ one_one_nat @ ( semiri1316708129612266289at_nat @ M ) ) ) ).

% of_nat_Suc
thf(fact_1692_of__nat__Suc,axiom,
    ! [M: nat] :
      ( ( semiri4939895301339042750nteger @ ( suc @ M ) )
      = ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( semiri4939895301339042750nteger @ M ) ) ) ).

% of_nat_Suc
thf(fact_1693_of__nat__Suc,axiom,
    ! [M: nat] :
      ( ( semiri681578069525770553at_rat @ ( suc @ M ) )
      = ( plus_plus_rat @ one_one_rat @ ( semiri681578069525770553at_rat @ M ) ) ) ).

% of_nat_Suc
thf(fact_1694_of__nat__Suc,axiom,
    ! [M: nat] :
      ( ( semiri3763490453095760265atural @ ( suc @ M ) )
      = ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( semiri3763490453095760265atural @ M ) ) ) ).

% of_nat_Suc
thf(fact_1695_nat__1,axiom,
    ( ( nat2 @ one_one_int )
    = ( suc @ zero_zero_nat ) ) ).

% nat_1
thf(fact_1696_one__less__nat__eq,axiom,
    ! [Z2: int] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ ( nat2 @ Z2 ) )
      = ( ord_less_int @ one_one_int @ Z2 ) ) ).

% one_less_nat_eq
thf(fact_1697_Nat_OlessE,axiom,
    ! [I: nat,K: nat] :
      ( ( ord_less_nat @ I @ K )
     => ( ( K
         != ( suc @ I ) )
       => ~ ! [J2: nat] :
              ( ( ord_less_nat @ I @ J2 )
             => ( K
               != ( suc @ J2 ) ) ) ) ) ).

% Nat.lessE
thf(fact_1698_Suc__lessD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ N )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_lessD
thf(fact_1699_Suc__lessE,axiom,
    ! [I: nat,K: nat] :
      ( ( ord_less_nat @ ( suc @ I ) @ K )
     => ~ ! [J2: nat] :
            ( ( ord_less_nat @ I @ J2 )
           => ( K
             != ( suc @ J2 ) ) ) ) ).

% Suc_lessE
thf(fact_1700_Suc__lessI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( ( suc @ M )
         != N )
       => ( ord_less_nat @ ( suc @ M ) @ N ) ) ) ).

% Suc_lessI
thf(fact_1701_less__SucE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
     => ( ~ ( ord_less_nat @ M @ N )
       => ( M = N ) ) ) ).

% less_SucE
thf(fact_1702_less__SucI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_nat @ M @ ( suc @ N ) ) ) ).

% less_SucI
thf(fact_1703_Ex__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N ) )
            & ( P @ I2 ) ) )
      = ( ( P @ N )
        | ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ N )
            & ( P @ I2 ) ) ) ) ).

% Ex_less_Suc
thf(fact_1704_less__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ( ord_less_nat @ M @ N )
        | ( M = N ) ) ) ).

% less_Suc_eq
thf(fact_1705_nat__neq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( M != N )
      = ( ( ord_less_nat @ M @ N )
        | ( ord_less_nat @ N @ M ) ) ) ).

% nat_neq_iff
thf(fact_1706_not__less__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ~ ( ord_less_nat @ M @ N ) )
      = ( ord_less_nat @ N @ ( suc @ M ) ) ) ).

% not_less_eq
thf(fact_1707_All__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N ) )
           => ( P @ I2 ) ) )
      = ( ( P @ N )
        & ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ N )
           => ( P @ I2 ) ) ) ) ).

% All_less_Suc
thf(fact_1708_Suc__less__eq2,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ ( suc @ N ) @ M )
      = ( ? [M7: nat] :
            ( ( M
              = ( suc @ M7 ) )
            & ( ord_less_nat @ N @ M7 ) ) ) ) ).

% Suc_less_eq2
thf(fact_1709_less__antisym,axiom,
    ! [N: nat,M: nat] :
      ( ~ ( ord_less_nat @ N @ M )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
       => ( M = N ) ) ) ).

% less_antisym
thf(fact_1710_Suc__less__SucD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_less_SucD
thf(fact_1711_less__not__refl,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ N ) ).

% less_not_refl
thf(fact_1712_less__not__refl2,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ N @ M )
     => ( M != N ) ) ).

% less_not_refl2
thf(fact_1713_less__not__refl3,axiom,
    ! [S: nat,T: nat] :
      ( ( ord_less_nat @ S @ T )
     => ( S != T ) ) ).

% less_not_refl3
thf(fact_1714_less__trans__Suc,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ J @ K )
       => ( ord_less_nat @ ( suc @ I ) @ K ) ) ) ).

% less_trans_Suc
thf(fact_1715_less__Suc__induct,axiom,
    ! [I: nat,J: nat,P: nat > nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I3: nat] : ( P @ I3 @ ( suc @ I3 ) )
       => ( ! [I3: nat,J2: nat,K3: nat] :
              ( ( ord_less_nat @ I3 @ J2 )
             => ( ( ord_less_nat @ J2 @ K3 )
               => ( ( P @ I3 @ J2 )
                 => ( ( P @ J2 @ K3 )
                   => ( P @ I3 @ K3 ) ) ) ) )
         => ( P @ I @ J ) ) ) ) ).

% less_Suc_induct
thf(fact_1716_less__irrefl__nat,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ N ) ).

% less_irrefl_nat
thf(fact_1717_nat__less__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N2: nat] :
          ( ! [M6: nat] :
              ( ( ord_less_nat @ M6 @ N2 )
             => ( P @ M6 ) )
         => ( P @ N2 ) )
     => ( P @ N ) ) ).

% nat_less_induct
thf(fact_1718_infinite__descent,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N2: nat] :
          ( ~ ( P @ N2 )
         => ? [M6: nat] :
              ( ( ord_less_nat @ M6 @ N2 )
              & ~ ( P @ M6 ) ) )
     => ( P @ N ) ) ).

% infinite_descent
thf(fact_1719_linorder__neqE__nat,axiom,
    ! [X2: nat,Y: nat] :
      ( ( X2 != Y )
     => ( ~ ( ord_less_nat @ X2 @ Y )
       => ( ord_less_nat @ Y @ X2 ) ) ) ).

% linorder_neqE_nat
thf(fact_1720_strict__inc__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_nat @ I @ J )
     => ( ! [I3: nat] :
            ( ( J
              = ( suc @ I3 ) )
           => ( P @ I3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ J )
             => ( ( P @ ( suc @ I3 ) )
               => ( P @ I3 ) ) )
         => ( P @ I ) ) ) ) ).

% strict_inc_induct
thf(fact_1721_not__less__less__Suc__eq,axiom,
    ! [N: nat,M: nat] :
      ( ~ ( ord_less_nat @ N @ M )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
        = ( N = M ) ) ) ).

% not_less_less_Suc_eq
thf(fact_1722_verit__negate__coefficient_I3_J,axiom,
    ! [A: int,B: int] :
      ( ( A = B )
     => ( ( uminus_uminus_int @ A )
        = ( uminus_uminus_int @ B ) ) ) ).

% verit_negate_coefficient(3)
thf(fact_1723_verit__negate__coefficient_I3_J,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A = B )
     => ( ( uminus1351360451143612070nteger @ A )
        = ( uminus1351360451143612070nteger @ B ) ) ) ).

% verit_negate_coefficient(3)
thf(fact_1724_verit__negate__coefficient_I3_J,axiom,
    ! [A: rat,B: rat] :
      ( ( A = B )
     => ( ( uminus_uminus_rat @ A )
        = ( uminus_uminus_rat @ B ) ) ) ).

% verit_negate_coefficient(3)
thf(fact_1725_n__not__Suc__n,axiom,
    ! [N: nat] :
      ( N
     != ( suc @ N ) ) ).

% n_not_Suc_n
thf(fact_1726_Suc__inject,axiom,
    ! [X2: nat,Y: nat] :
      ( ( ( suc @ X2 )
        = ( suc @ Y ) )
     => ( X2 = Y ) ) ).

% Suc_inject
thf(fact_1727_minus__equation__iff,axiom,
    ! [A: int,B: int] :
      ( ( ( uminus_uminus_int @ A )
        = B )
      = ( ( uminus_uminus_int @ B )
        = A ) ) ).

% minus_equation_iff
thf(fact_1728_minus__equation__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( uminus1351360451143612070nteger @ A )
        = B )
      = ( ( uminus1351360451143612070nteger @ B )
        = A ) ) ).

% minus_equation_iff
thf(fact_1729_minus__equation__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ( uminus_uminus_rat @ A )
        = B )
      = ( ( uminus_uminus_rat @ B )
        = A ) ) ).

% minus_equation_iff
thf(fact_1730_equation__minus__iff,axiom,
    ! [A: int,B: int] :
      ( ( A
        = ( uminus_uminus_int @ B ) )
      = ( B
        = ( uminus_uminus_int @ A ) ) ) ).

% equation_minus_iff
thf(fact_1731_equation__minus__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A
        = ( uminus1351360451143612070nteger @ B ) )
      = ( B
        = ( uminus1351360451143612070nteger @ A ) ) ) ).

% equation_minus_iff
thf(fact_1732_equation__minus__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( A
        = ( uminus_uminus_rat @ B ) )
      = ( B
        = ( uminus_uminus_rat @ A ) ) ) ).

% equation_minus_iff
thf(fact_1733_int__of__nat__induct,axiom,
    ! [P: int > $o,Z2: int] :
      ( ! [N2: nat] : ( P @ ( semiri1314217659103216013at_int @ N2 ) )
     => ( ! [N2: nat] : ( P @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N2 ) ) ) )
       => ( P @ Z2 ) ) ) ).

% int_of_nat_induct
thf(fact_1734_int__cases,axiom,
    ! [Z2: int] :
      ( ! [N2: nat] :
          ( Z2
         != ( semiri1314217659103216013at_int @ N2 ) )
     => ~ ! [N2: nat] :
            ( Z2
           != ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N2 ) ) ) ) ) ).

% int_cases
thf(fact_1735_ceiling__def,axiom,
    ( archim2889992004027027881ng_rat
    = ( ^ [X: rat] : ( uminus_uminus_int @ ( archim3151403230148437115or_rat @ ( uminus_uminus_rat @ X ) ) ) ) ) ).

% ceiling_def
thf(fact_1736_floor__minus,axiom,
    ! [X2: rat] :
      ( ( archim3151403230148437115or_rat @ ( uminus_uminus_rat @ X2 ) )
      = ( uminus_uminus_int @ ( archim2889992004027027881ng_rat @ X2 ) ) ) ).

% floor_minus
thf(fact_1737_ceiling__minus,axiom,
    ! [X2: rat] :
      ( ( archim2889992004027027881ng_rat @ ( uminus_uminus_rat @ X2 ) )
      = ( uminus_uminus_int @ ( archim3151403230148437115or_rat @ X2 ) ) ) ).

% ceiling_minus
thf(fact_1738_le__imp__neg__le,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ B ) @ ( uminus1351360451143612070nteger @ A ) ) ) ).

% le_imp_neg_le
thf(fact_1739_le__imp__neg__le,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ord_less_eq_rat @ ( uminus_uminus_rat @ B ) @ ( uminus_uminus_rat @ A ) ) ) ).

% le_imp_neg_le
thf(fact_1740_le__imp__neg__le,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ord_less_eq_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) ) ) ).

% le_imp_neg_le
thf(fact_1741_minus__le__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ A ) @ B )
      = ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ B ) @ A ) ) ).

% minus_le_iff
thf(fact_1742_minus__le__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ A ) @ B )
      = ( ord_less_eq_rat @ ( uminus_uminus_rat @ B ) @ A ) ) ).

% minus_le_iff
thf(fact_1743_minus__le__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ B )
      = ( ord_less_eq_int @ ( uminus_uminus_int @ B ) @ A ) ) ).

% minus_le_iff
thf(fact_1744_le__minus__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ ( uminus1351360451143612070nteger @ B ) )
      = ( ord_le3102999989581377725nteger @ B @ ( uminus1351360451143612070nteger @ A ) ) ) ).

% le_minus_iff
thf(fact_1745_le__minus__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ ( uminus_uminus_rat @ B ) )
      = ( ord_less_eq_rat @ B @ ( uminus_uminus_rat @ A ) ) ) ).

% le_minus_iff
thf(fact_1746_le__minus__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ ( uminus_uminus_int @ B ) )
      = ( ord_less_eq_int @ B @ ( uminus_uminus_int @ A ) ) ) ).

% le_minus_iff
thf(fact_1747_verit__negate__coefficient_I2_J,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) ) ) ).

% verit_negate_coefficient(2)
thf(fact_1748_verit__negate__coefficient_I2_J,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ B ) @ ( uminus1351360451143612070nteger @ A ) ) ) ).

% verit_negate_coefficient(2)
thf(fact_1749_verit__negate__coefficient_I2_J,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ord_less_rat @ ( uminus_uminus_rat @ B ) @ ( uminus_uminus_rat @ A ) ) ) ).

% verit_negate_coefficient(2)
thf(fact_1750_minus__less__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ ( uminus_uminus_int @ A ) @ B )
      = ( ord_less_int @ ( uminus_uminus_int @ B ) @ A ) ) ).

% minus_less_iff
thf(fact_1751_minus__less__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ A ) @ B )
      = ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ B ) @ A ) ) ).

% minus_less_iff
thf(fact_1752_minus__less__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ ( uminus_uminus_rat @ A ) @ B )
      = ( ord_less_rat @ ( uminus_uminus_rat @ B ) @ A ) ) ).

% minus_less_iff
thf(fact_1753_less__minus__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ ( uminus_uminus_int @ B ) )
      = ( ord_less_int @ B @ ( uminus_uminus_int @ A ) ) ) ).

% less_minus_iff
thf(fact_1754_less__minus__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ ( uminus1351360451143612070nteger @ B ) )
      = ( ord_le6747313008572928689nteger @ B @ ( uminus1351360451143612070nteger @ A ) ) ) ).

% less_minus_iff
thf(fact_1755_less__minus__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ ( uminus_uminus_rat @ B ) )
      = ( ord_less_rat @ B @ ( uminus_uminus_rat @ A ) ) ) ).

% less_minus_iff
thf(fact_1756_add_Oinverse__distrib__swap,axiom,
    ! [A: int,B: int] :
      ( ( uminus_uminus_int @ ( plus_plus_int @ A @ B ) )
      = ( plus_plus_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) ) ) ).

% add.inverse_distrib_swap
thf(fact_1757_add_Oinverse__distrib__swap,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( uminus1351360451143612070nteger @ ( plus_p5714425477246183910nteger @ A @ B ) )
      = ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ B ) @ ( uminus1351360451143612070nteger @ A ) ) ) ).

% add.inverse_distrib_swap
thf(fact_1758_add_Oinverse__distrib__swap,axiom,
    ! [A: rat,B: rat] :
      ( ( uminus_uminus_rat @ ( plus_plus_rat @ A @ B ) )
      = ( plus_plus_rat @ ( uminus_uminus_rat @ B ) @ ( uminus_uminus_rat @ A ) ) ) ).

% add.inverse_distrib_swap
thf(fact_1759_group__cancel_Oneg1,axiom,
    ! [A4: int,K: int,A: int] :
      ( ( A4
        = ( plus_plus_int @ K @ A ) )
     => ( ( uminus_uminus_int @ A4 )
        = ( plus_plus_int @ ( uminus_uminus_int @ K ) @ ( uminus_uminus_int @ A ) ) ) ) ).

% group_cancel.neg1
thf(fact_1760_group__cancel_Oneg1,axiom,
    ! [A4: code_integer,K: code_integer,A: code_integer] :
      ( ( A4
        = ( plus_p5714425477246183910nteger @ K @ A ) )
     => ( ( uminus1351360451143612070nteger @ A4 )
        = ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ K ) @ ( uminus1351360451143612070nteger @ A ) ) ) ) ).

% group_cancel.neg1
thf(fact_1761_group__cancel_Oneg1,axiom,
    ! [A4: rat,K: rat,A: rat] :
      ( ( A4
        = ( plus_plus_rat @ K @ A ) )
     => ( ( uminus_uminus_rat @ A4 )
        = ( plus_plus_rat @ ( uminus_uminus_rat @ K ) @ ( uminus_uminus_rat @ A ) ) ) ) ).

% group_cancel.neg1
thf(fact_1762_is__num__normalize_I8_J,axiom,
    ! [A: int,B: int] :
      ( ( uminus_uminus_int @ ( plus_plus_int @ A @ B ) )
      = ( plus_plus_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) ) ) ).

% is_num_normalize(8)
thf(fact_1763_is__num__normalize_I8_J,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( uminus1351360451143612070nteger @ ( plus_p5714425477246183910nteger @ A @ B ) )
      = ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ B ) @ ( uminus1351360451143612070nteger @ A ) ) ) ).

% is_num_normalize(8)
thf(fact_1764_is__num__normalize_I8_J,axiom,
    ! [A: rat,B: rat] :
      ( ( uminus_uminus_rat @ ( plus_plus_rat @ A @ B ) )
      = ( plus_plus_rat @ ( uminus_uminus_rat @ B ) @ ( uminus_uminus_rat @ A ) ) ) ).

% is_num_normalize(8)
thf(fact_1765_one__neq__neg__one,axiom,
    ( one_one_int
   != ( uminus_uminus_int @ one_one_int ) ) ).

% one_neq_neg_one
thf(fact_1766_one__neq__neg__one,axiom,
    ( one_one_Code_integer
   != ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% one_neq_neg_one
thf(fact_1767_one__neq__neg__one,axiom,
    ( one_one_rat
   != ( uminus_uminus_rat @ one_one_rat ) ) ).

% one_neq_neg_one
thf(fact_1768_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > code_integer,N: nat,M: nat] :
      ( ! [N2: nat] : ( ord_le6747313008572928689nteger @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_le6747313008572928689nteger @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_1769_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > rat,N: nat,M: nat] :
      ( ! [N2: nat] : ( ord_less_rat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_rat @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_1770_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > num,N: nat,M: nat] :
      ( ! [N2: nat] : ( ord_less_num @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_num @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_1771_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > nat,N: nat,M: nat] :
      ( ! [N2: nat] : ( ord_less_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_1772_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > int,N: nat,M: nat] :
      ( ! [N2: nat] : ( ord_less_int @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_int @ ( F @ N ) @ ( F @ M ) )
        = ( ord_less_nat @ N @ M ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_1773_lift__Suc__mono__less,axiom,
    ! [F: nat > code_integer,N: nat,N7: nat] :
      ( ! [N2: nat] : ( ord_le6747313008572928689nteger @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ N @ N7 )
       => ( ord_le6747313008572928689nteger @ ( F @ N ) @ ( F @ N7 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_1774_lift__Suc__mono__less,axiom,
    ! [F: nat > rat,N: nat,N7: nat] :
      ( ! [N2: nat] : ( ord_less_rat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ N @ N7 )
       => ( ord_less_rat @ ( F @ N ) @ ( F @ N7 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_1775_lift__Suc__mono__less,axiom,
    ! [F: nat > num,N: nat,N7: nat] :
      ( ! [N2: nat] : ( ord_less_num @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ N @ N7 )
       => ( ord_less_num @ ( F @ N ) @ ( F @ N7 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_1776_lift__Suc__mono__less,axiom,
    ! [F: nat > nat,N: nat,N7: nat] :
      ( ! [N2: nat] : ( ord_less_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ N @ N7 )
       => ( ord_less_nat @ ( F @ N ) @ ( F @ N7 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_1777_lift__Suc__mono__less,axiom,
    ! [F: nat > int,N: nat,N7: nat] :
      ( ! [N2: nat] : ( ord_less_int @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_nat @ N @ N7 )
       => ( ord_less_int @ ( F @ N ) @ ( F @ N7 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_1778_not0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ? [M4: nat] :
          ( N
          = ( suc @ M4 ) ) ) ).

% not0_implies_Suc
thf(fact_1779_Zero__not__Suc,axiom,
    ! [M: nat] :
      ( zero_zero_nat
     != ( suc @ M ) ) ).

% Zero_not_Suc
thf(fact_1780_Zero__neq__Suc,axiom,
    ! [M: nat] :
      ( zero_zero_nat
     != ( suc @ M ) ) ).

% Zero_neq_Suc
thf(fact_1781_Suc__neq__Zero,axiom,
    ! [M: nat] :
      ( ( suc @ M )
     != zero_zero_nat ) ).

% Suc_neq_Zero
thf(fact_1782_zero__induct,axiom,
    ! [P: nat > $o,K: nat] :
      ( ( P @ K )
     => ( ! [N2: nat] :
            ( ( P @ ( suc @ N2 ) )
           => ( P @ N2 ) )
       => ( P @ zero_zero_nat ) ) ) ).

% zero_induct
thf(fact_1783_diff__induct,axiom,
    ! [P: nat > nat > $o,M: nat,N: nat] :
      ( ! [X3: nat] : ( P @ X3 @ zero_zero_nat )
     => ( ! [Y2: nat] : ( P @ zero_zero_nat @ ( suc @ Y2 ) )
       => ( ! [X3: nat,Y2: nat] :
              ( ( P @ X3 @ Y2 )
             => ( P @ ( suc @ X3 ) @ ( suc @ Y2 ) ) )
         => ( P @ M @ N ) ) ) ) ).

% diff_induct
thf(fact_1784_nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N2: nat] :
            ( ( P @ N2 )
           => ( P @ ( suc @ N2 ) ) )
       => ( P @ N ) ) ) ).

% nat_induct
thf(fact_1785_old_Onat_Oexhaust,axiom,
    ! [Y: nat] :
      ( ( Y != zero_zero_nat )
     => ~ ! [Nat3: nat] :
            ( Y
           != ( suc @ Nat3 ) ) ) ).

% old.nat.exhaust
thf(fact_1786_nat_OdiscI,axiom,
    ! [Nat: nat,X22: nat] :
      ( ( Nat
        = ( suc @ X22 ) )
     => ( Nat != zero_zero_nat ) ) ).

% nat.discI
thf(fact_1787_old_Onat_Odistinct_I1_J,axiom,
    ! [Nat2: nat] :
      ( zero_zero_nat
     != ( suc @ Nat2 ) ) ).

% old.nat.distinct(1)
thf(fact_1788_old_Onat_Odistinct_I2_J,axiom,
    ! [Nat2: nat] :
      ( ( suc @ Nat2 )
     != zero_zero_nat ) ).

% old.nat.distinct(2)
thf(fact_1789_nat_Odistinct_I1_J,axiom,
    ! [X22: nat] :
      ( zero_zero_nat
     != ( suc @ X22 ) ) ).

% nat.distinct(1)
thf(fact_1790_exists__least__lemma,axiom,
    ! [P: nat > $o] :
      ( ~ ( P @ zero_zero_nat )
     => ( ? [X_1: nat] : ( P @ X_1 )
       => ? [N2: nat] :
            ( ~ ( P @ N2 )
            & ( P @ ( suc @ N2 ) ) ) ) ) ).

% exists_least_lemma
thf(fact_1791_less__Suc__eq__0__disj,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ( M = zero_zero_nat )
        | ? [J3: nat] :
            ( ( M
              = ( suc @ J3 ) )
            & ( ord_less_nat @ J3 @ N ) ) ) ) ).

% less_Suc_eq_0_disj
thf(fact_1792_gr0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ? [M4: nat] :
          ( N
          = ( suc @ M4 ) ) ) ).

% gr0_implies_Suc
thf(fact_1793_All__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N ) )
           => ( P @ I2 ) ) )
      = ( ( P @ zero_zero_nat )
        & ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ N )
           => ( P @ ( suc @ I2 ) ) ) ) ) ).

% All_less_Suc2
thf(fact_1794_gr0__conv__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
      = ( ? [M2: nat] :
            ( N
            = ( suc @ M2 ) ) ) ) ).

% gr0_conv_Suc
thf(fact_1795_Ex__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N ) )
            & ( P @ I2 ) ) )
      = ( ( P @ zero_zero_nat )
        | ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ N )
            & ( P @ ( suc @ I2 ) ) ) ) ) ).

% Ex_less_Suc2
thf(fact_1796_uminus__int__code_I1_J,axiom,
    ( ( uminus_uminus_int @ zero_zero_int )
    = zero_zero_int ) ).

% uminus_int_code(1)
thf(fact_1797_transitive__stepwise__le,axiom,
    ! [M: nat,N: nat,R3: nat > nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ! [X3: nat] : ( R3 @ X3 @ X3 )
       => ( ! [X3: nat,Y2: nat,Z4: nat] :
              ( ( R3 @ X3 @ Y2 )
             => ( ( R3 @ Y2 @ Z4 )
               => ( R3 @ X3 @ Z4 ) ) )
         => ( ! [N2: nat] : ( R3 @ N2 @ ( suc @ N2 ) )
           => ( R3 @ M @ N ) ) ) ) ) ).

% transitive_stepwise_le
thf(fact_1798_nat__induct__at__least,axiom,
    ! [M: nat,N: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( P @ M )
       => ( ! [N2: nat] :
              ( ( ord_less_eq_nat @ M @ N2 )
             => ( ( P @ N2 )
               => ( P @ ( suc @ N2 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct_at_least
thf(fact_1799_full__nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N2: nat] :
          ( ! [M6: nat] :
              ( ( ord_less_eq_nat @ ( suc @ M6 ) @ N2 )
             => ( P @ M6 ) )
         => ( P @ N2 ) )
     => ( P @ N ) ) ).

% full_nat_induct
thf(fact_1800_not__less__eq__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ~ ( ord_less_eq_nat @ M @ N ) )
      = ( ord_less_eq_nat @ ( suc @ N ) @ M ) ) ).

% not_less_eq_eq
thf(fact_1801_Suc__n__not__le__n,axiom,
    ! [N: nat] :
      ~ ( ord_less_eq_nat @ ( suc @ N ) @ N ) ).

% Suc_n_not_le_n
thf(fact_1802_le__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
      = ( ( ord_less_eq_nat @ M @ N )
        | ( M
          = ( suc @ N ) ) ) ) ).

% le_Suc_eq
thf(fact_1803_Suc__le__D,axiom,
    ! [N: nat,M5: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ M5 )
     => ? [M4: nat] :
          ( M5
          = ( suc @ M4 ) ) ) ).

% Suc_le_D
thf(fact_1804_le__SucI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ M @ ( suc @ N ) ) ) ).

% le_SucI
thf(fact_1805_le__SucE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
     => ( ~ ( ord_less_eq_nat @ M @ N )
       => ( M
          = ( suc @ N ) ) ) ) ).

% le_SucE
thf(fact_1806_Suc__leD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% Suc_leD
thf(fact_1807_Suc__leI,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ ( suc @ M ) @ N ) ) ).

% Suc_leI
thf(fact_1808_Suc__le__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
      = ( ord_less_nat @ M @ N ) ) ).

% Suc_le_eq
thf(fact_1809_dec__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( P @ I )
       => ( ! [N2: nat] :
              ( ( ord_less_eq_nat @ I @ N2 )
             => ( ( ord_less_nat @ N2 @ J )
               => ( ( P @ N2 )
                 => ( P @ ( suc @ N2 ) ) ) ) )
         => ( P @ J ) ) ) ) ).

% dec_induct
thf(fact_1810_inc__induct,axiom,
    ! [I: nat,J: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( P @ J )
       => ( ! [N2: nat] :
              ( ( ord_less_eq_nat @ I @ N2 )
             => ( ( ord_less_nat @ N2 @ J )
               => ( ( P @ ( suc @ N2 ) )
                 => ( P @ N2 ) ) ) )
         => ( P @ I ) ) ) ) ).

% inc_induct
thf(fact_1811_Suc__le__lessD,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
     => ( ord_less_nat @ M @ N ) ) ).

% Suc_le_lessD
thf(fact_1812_le__less__Suc__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_nat @ N @ ( suc @ M ) )
        = ( N = M ) ) ) ).

% le_less_Suc_eq
thf(fact_1813_less__Suc__eq__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ ( suc @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% less_Suc_eq_le
thf(fact_1814_less__eq__Suc__le,axiom,
    ( ord_less_nat
    = ( ^ [N3: nat] : ( ord_less_eq_nat @ ( suc @ N3 ) ) ) ) ).

% less_eq_Suc_le
thf(fact_1815_le__imp__less__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_nat @ M @ ( suc @ N ) ) ) ).

% le_imp_less_Suc
thf(fact_1816_nat__in__between__eq_I1_J,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ord_less_nat @ A @ B )
        & ( ord_less_eq_nat @ B @ ( suc @ A ) ) )
      = ( B
        = ( suc @ A ) ) ) ).

% nat_in_between_eq(1)
thf(fact_1817_nat__in__between__eq_I2_J,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ord_less_eq_nat @ A @ B )
        & ( ord_less_nat @ B @ ( suc @ A ) ) )
      = ( B = A ) ) ).

% nat_in_between_eq(2)
thf(fact_1818_add__Suc__shift,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M ) @ N )
      = ( plus_plus_nat @ M @ ( suc @ N ) ) ) ).

% add_Suc_shift
thf(fact_1819_add__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M ) @ N )
      = ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).

% add_Suc
thf(fact_1820_nat__arith_Osuc1,axiom,
    ! [A4: nat,K: nat,A: nat] :
      ( ( A4
        = ( plus_plus_nat @ K @ A ) )
     => ( ( suc @ A4 )
        = ( plus_plus_nat @ K @ ( suc @ A ) ) ) ) ).

% nat_arith.suc1
thf(fact_1821_less__imp__Suc__add,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ? [K3: nat] :
          ( N
          = ( suc @ ( plus_plus_nat @ M @ K3 ) ) ) ) ).

% less_imp_Suc_add
thf(fact_1822_less__iff__Suc__add,axiom,
    ( ord_less_nat
    = ( ^ [M2: nat,N3: nat] :
        ? [K2: nat] :
          ( N3
          = ( suc @ ( plus_plus_nat @ M2 @ K2 ) ) ) ) ) ).

% less_iff_Suc_add
thf(fact_1823_less__add__Suc2,axiom,
    ! [I: nat,M: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ M @ I ) ) ) ).

% less_add_Suc2
thf(fact_1824_less__add__Suc1,axiom,
    ! [I: nat,M: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ I @ M ) ) ) ).

% less_add_Suc1
thf(fact_1825_less__natE,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ~ ! [Q4: nat] :
            ( N
           != ( suc @ ( plus_plus_nat @ M @ Q4 ) ) ) ) ).

% less_natE
thf(fact_1826_int__cases2,axiom,
    ! [Z2: int] :
      ( ! [N2: nat] :
          ( Z2
         != ( semiri1314217659103216013at_int @ N2 ) )
     => ~ ! [N2: nat] :
            ( Z2
           != ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N2 ) ) ) ) ).

% int_cases2
thf(fact_1827_not__zle__0__negative,axiom,
    ! [N: nat] :
      ~ ( ord_less_eq_int @ zero_zero_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N ) ) ) ) ).

% not_zle_0_negative
thf(fact_1828_negD,axiom,
    ! [X2: int] :
      ( ( ord_less_int @ X2 @ zero_zero_int )
     => ? [N2: nat] :
          ( X2
          = ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N2 ) ) ) ) ) ).

% negD
thf(fact_1829_negative__zless__0,axiom,
    ! [N: nat] : ( ord_less_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( suc @ N ) ) ) @ zero_zero_int ) ).

% negative_zless_0
thf(fact_1830_neg__eq__iff__add__eq__0,axiom,
    ! [A: int,B: int] :
      ( ( ( uminus_uminus_int @ A )
        = B )
      = ( ( plus_plus_int @ A @ B )
        = zero_zero_int ) ) ).

% neg_eq_iff_add_eq_0
thf(fact_1831_neg__eq__iff__add__eq__0,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( uminus1351360451143612070nteger @ A )
        = B )
      = ( ( plus_p5714425477246183910nteger @ A @ B )
        = zero_z3403309356797280102nteger ) ) ).

% neg_eq_iff_add_eq_0
thf(fact_1832_neg__eq__iff__add__eq__0,axiom,
    ! [A: rat,B: rat] :
      ( ( ( uminus_uminus_rat @ A )
        = B )
      = ( ( plus_plus_rat @ A @ B )
        = zero_zero_rat ) ) ).

% neg_eq_iff_add_eq_0
thf(fact_1833_eq__neg__iff__add__eq__0,axiom,
    ! [A: int,B: int] :
      ( ( A
        = ( uminus_uminus_int @ B ) )
      = ( ( plus_plus_int @ A @ B )
        = zero_zero_int ) ) ).

% eq_neg_iff_add_eq_0
thf(fact_1834_eq__neg__iff__add__eq__0,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A
        = ( uminus1351360451143612070nteger @ B ) )
      = ( ( plus_p5714425477246183910nteger @ A @ B )
        = zero_z3403309356797280102nteger ) ) ).

% eq_neg_iff_add_eq_0
thf(fact_1835_eq__neg__iff__add__eq__0,axiom,
    ! [A: rat,B: rat] :
      ( ( A
        = ( uminus_uminus_rat @ B ) )
      = ( ( plus_plus_rat @ A @ B )
        = zero_zero_rat ) ) ).

% eq_neg_iff_add_eq_0
thf(fact_1836_add_Oinverse__unique,axiom,
    ! [A: int,B: int] :
      ( ( ( plus_plus_int @ A @ B )
        = zero_zero_int )
     => ( ( uminus_uminus_int @ A )
        = B ) ) ).

% add.inverse_unique
thf(fact_1837_add_Oinverse__unique,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ A @ B )
        = zero_z3403309356797280102nteger )
     => ( ( uminus1351360451143612070nteger @ A )
        = B ) ) ).

% add.inverse_unique
thf(fact_1838_add_Oinverse__unique,axiom,
    ! [A: rat,B: rat] :
      ( ( ( plus_plus_rat @ A @ B )
        = zero_zero_rat )
     => ( ( uminus_uminus_rat @ A )
        = B ) ) ).

% add.inverse_unique
thf(fact_1839_ab__group__add__class_Oab__left__minus,axiom,
    ! [A: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ A ) @ A )
      = zero_zero_int ) ).

% ab_group_add_class.ab_left_minus
thf(fact_1840_ab__group__add__class_Oab__left__minus,axiom,
    ! [A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ A ) @ A )
      = zero_z3403309356797280102nteger ) ).

% ab_group_add_class.ab_left_minus
thf(fact_1841_ab__group__add__class_Oab__left__minus,axiom,
    ! [A: rat] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ A ) @ A )
      = zero_zero_rat ) ).

% ab_group_add_class.ab_left_minus
thf(fact_1842_add__eq__0__iff,axiom,
    ! [A: int,B: int] :
      ( ( ( plus_plus_int @ A @ B )
        = zero_zero_int )
      = ( B
        = ( uminus_uminus_int @ A ) ) ) ).

% add_eq_0_iff
thf(fact_1843_add__eq__0__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ A @ B )
        = zero_z3403309356797280102nteger )
      = ( B
        = ( uminus1351360451143612070nteger @ A ) ) ) ).

% add_eq_0_iff
thf(fact_1844_add__eq__0__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ( plus_plus_rat @ A @ B )
        = zero_zero_rat )
      = ( B
        = ( uminus_uminus_rat @ A ) ) ) ).

% add_eq_0_iff
thf(fact_1845_le__minus__one__simps_I4_J,axiom,
    ~ ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% le_minus_one_simps(4)
thf(fact_1846_le__minus__one__simps_I4_J,axiom,
    ~ ( ord_less_eq_rat @ one_one_rat @ ( uminus_uminus_rat @ one_one_rat ) ) ).

% le_minus_one_simps(4)
thf(fact_1847_le__minus__one__simps_I4_J,axiom,
    ~ ( ord_less_eq_int @ one_one_int @ ( uminus_uminus_int @ one_one_int ) ) ).

% le_minus_one_simps(4)
thf(fact_1848_le__minus__one__simps_I2_J,axiom,
    ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ one_one_Code_integer ).

% le_minus_one_simps(2)
thf(fact_1849_le__minus__one__simps_I2_J,axiom,
    ord_less_eq_rat @ ( uminus_uminus_rat @ one_one_rat ) @ one_one_rat ).

% le_minus_one_simps(2)
thf(fact_1850_le__minus__one__simps_I2_J,axiom,
    ord_less_eq_int @ ( uminus_uminus_int @ one_one_int ) @ one_one_int ).

% le_minus_one_simps(2)
thf(fact_1851_zero__neq__neg__one,axiom,
    ( zero_zero_int
   != ( uminus_uminus_int @ one_one_int ) ) ).

% zero_neq_neg_one
thf(fact_1852_zero__neq__neg__one,axiom,
    ( zero_z3403309356797280102nteger
   != ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% zero_neq_neg_one
thf(fact_1853_zero__neq__neg__one,axiom,
    ( zero_zero_rat
   != ( uminus_uminus_rat @ one_one_rat ) ) ).

% zero_neq_neg_one
thf(fact_1854_less__minus__one__simps_I2_J,axiom,
    ord_less_int @ ( uminus_uminus_int @ one_one_int ) @ one_one_int ).

% less_minus_one_simps(2)
thf(fact_1855_less__minus__one__simps_I2_J,axiom,
    ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ one_one_Code_integer ).

% less_minus_one_simps(2)
thf(fact_1856_less__minus__one__simps_I2_J,axiom,
    ord_less_rat @ ( uminus_uminus_rat @ one_one_rat ) @ one_one_rat ).

% less_minus_one_simps(2)
thf(fact_1857_less__minus__one__simps_I4_J,axiom,
    ~ ( ord_less_int @ one_one_int @ ( uminus_uminus_int @ one_one_int ) ) ).

% less_minus_one_simps(4)
thf(fact_1858_less__minus__one__simps_I4_J,axiom,
    ~ ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% less_minus_one_simps(4)
thf(fact_1859_less__minus__one__simps_I4_J,axiom,
    ~ ( ord_less_rat @ one_one_rat @ ( uminus_uminus_rat @ one_one_rat ) ) ).

% less_minus_one_simps(4)
thf(fact_1860_lift__Suc__antimono__le,axiom,
    ! [F: nat > set_nat,N: nat,N7: nat] :
      ( ! [N2: nat] : ( ord_less_eq_set_nat @ ( F @ ( suc @ N2 ) ) @ ( F @ N2 ) )
     => ( ( ord_less_eq_nat @ N @ N7 )
       => ( ord_less_eq_set_nat @ ( F @ N7 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_1861_lift__Suc__antimono__le,axiom,
    ! [F: nat > rat,N: nat,N7: nat] :
      ( ! [N2: nat] : ( ord_less_eq_rat @ ( F @ ( suc @ N2 ) ) @ ( F @ N2 ) )
     => ( ( ord_less_eq_nat @ N @ N7 )
       => ( ord_less_eq_rat @ ( F @ N7 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_1862_lift__Suc__antimono__le,axiom,
    ! [F: nat > num,N: nat,N7: nat] :
      ( ! [N2: nat] : ( ord_less_eq_num @ ( F @ ( suc @ N2 ) ) @ ( F @ N2 ) )
     => ( ( ord_less_eq_nat @ N @ N7 )
       => ( ord_less_eq_num @ ( F @ N7 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_1863_lift__Suc__antimono__le,axiom,
    ! [F: nat > nat,N: nat,N7: nat] :
      ( ! [N2: nat] : ( ord_less_eq_nat @ ( F @ ( suc @ N2 ) ) @ ( F @ N2 ) )
     => ( ( ord_less_eq_nat @ N @ N7 )
       => ( ord_less_eq_nat @ ( F @ N7 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_1864_lift__Suc__antimono__le,axiom,
    ! [F: nat > int,N: nat,N7: nat] :
      ( ! [N2: nat] : ( ord_less_eq_int @ ( F @ ( suc @ N2 ) ) @ ( F @ N2 ) )
     => ( ( ord_less_eq_nat @ N @ N7 )
       => ( ord_less_eq_int @ ( F @ N7 ) @ ( F @ N ) ) ) ) ).

% lift_Suc_antimono_le
thf(fact_1865_lift__Suc__mono__le,axiom,
    ! [F: nat > set_nat,N: nat,N7: nat] :
      ( ! [N2: nat] : ( ord_less_eq_set_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N7 )
       => ( ord_less_eq_set_nat @ ( F @ N ) @ ( F @ N7 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_1866_lift__Suc__mono__le,axiom,
    ! [F: nat > rat,N: nat,N7: nat] :
      ( ! [N2: nat] : ( ord_less_eq_rat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N7 )
       => ( ord_less_eq_rat @ ( F @ N ) @ ( F @ N7 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_1867_lift__Suc__mono__le,axiom,
    ! [F: nat > num,N: nat,N7: nat] :
      ( ! [N2: nat] : ( ord_less_eq_num @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N7 )
       => ( ord_less_eq_num @ ( F @ N ) @ ( F @ N7 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_1868_lift__Suc__mono__le,axiom,
    ! [F: nat > nat,N: nat,N7: nat] :
      ( ! [N2: nat] : ( ord_less_eq_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N7 )
       => ( ord_less_eq_nat @ ( F @ N ) @ ( F @ N7 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_1869_lift__Suc__mono__le,axiom,
    ! [F: nat > int,N: nat,N7: nat] :
      ( ! [N2: nat] : ( ord_less_eq_int @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
     => ( ( ord_less_eq_nat @ N @ N7 )
       => ( ord_less_eq_int @ ( F @ N ) @ ( F @ N7 ) ) ) ) ).

% lift_Suc_mono_le
thf(fact_1870_of__nat__neq__0,axiom,
    ! [N: nat] :
      ( ( semiri1314217659103216013at_int @ ( suc @ N ) )
     != zero_zero_int ) ).

% of_nat_neq_0
thf(fact_1871_of__nat__neq__0,axiom,
    ! [N: nat] :
      ( ( semiri1316708129612266289at_nat @ ( suc @ N ) )
     != zero_zero_nat ) ).

% of_nat_neq_0
thf(fact_1872_of__nat__neq__0,axiom,
    ! [N: nat] :
      ( ( semiri4939895301339042750nteger @ ( suc @ N ) )
     != zero_z3403309356797280102nteger ) ).

% of_nat_neq_0
thf(fact_1873_of__nat__neq__0,axiom,
    ! [N: nat] :
      ( ( semiri681578069525770553at_rat @ ( suc @ N ) )
     != zero_zero_rat ) ).

% of_nat_neq_0
thf(fact_1874_of__nat__neq__0,axiom,
    ! [N: nat] :
      ( ( semiri3763490453095760265atural @ ( suc @ N ) )
     != zero_z2226904508553997617atural ) ).

% of_nat_neq_0
thf(fact_1875_nat__compl__induct_H,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N2: nat] :
            ( ! [Nn: nat] :
                ( ( ord_less_eq_nat @ Nn @ N2 )
               => ( P @ Nn ) )
           => ( P @ ( suc @ N2 ) ) )
       => ( P @ N ) ) ) ).

% nat_compl_induct'
thf(fact_1876_nat__compl__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N2: nat] :
            ( ! [Nn: nat] :
                ( ( ord_less_eq_nat @ Nn @ N2 )
               => ( P @ Nn ) )
           => ( P @ ( suc @ N2 ) ) )
       => ( P @ N ) ) ) ).

% nat_compl_induct
thf(fact_1877_ex__least__nat__less,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K3: nat] :
            ( ( ord_less_nat @ K3 @ N )
            & ! [I4: nat] :
                ( ( ord_less_eq_nat @ I4 @ K3 )
               => ~ ( P @ I4 ) )
            & ( P @ ( suc @ K3 ) ) ) ) ) ).

% ex_least_nat_less
thf(fact_1878_one__is__add,axiom,
    ! [M: nat,N: nat] :
      ( ( ( suc @ zero_zero_nat )
        = ( plus_plus_nat @ M @ N ) )
      = ( ( ( M
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% one_is_add
thf(fact_1879_add__is__1,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = ( suc @ zero_zero_nat ) )
      = ( ( ( M
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% add_is_1
thf(fact_1880_One__nat__def,axiom,
    ( one_one_nat
    = ( suc @ zero_zero_nat ) ) ).

% One_nat_def
thf(fact_1881_nat__induct__non__zero,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( P @ one_one_nat )
       => ( ! [N2: nat] :
              ( ( ord_less_nat @ zero_zero_nat @ N2 )
             => ( ( P @ N2 )
               => ( P @ ( suc @ N2 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct_non_zero
thf(fact_1882_int__cases4,axiom,
    ! [M: int] :
      ( ! [N2: nat] :
          ( M
         != ( semiri1314217659103216013at_int @ N2 ) )
     => ~ ! [N2: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N2 )
           => ( M
             != ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N2 ) ) ) ) ) ).

% int_cases4
thf(fact_1883_Suc__eq__plus1__left,axiom,
    ( suc
    = ( plus_plus_nat @ one_one_nat ) ) ).

% Suc_eq_plus1_left
thf(fact_1884_plus__1__eq__Suc,axiom,
    ( ( plus_plus_nat @ one_one_nat )
    = suc ) ).

% plus_1_eq_Suc
thf(fact_1885_Suc__eq__plus1,axiom,
    ( suc
    = ( ^ [N3: nat] : ( plus_plus_nat @ N3 @ one_one_nat ) ) ) ).

% Suc_eq_plus1
thf(fact_1886_not__int__zless__negative,axiom,
    ! [N: nat,M: nat] :
      ~ ( ord_less_int @ ( semiri1314217659103216013at_int @ N ) @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ M ) ) ) ).

% not_int_zless_negative
thf(fact_1887_of__int__of__nat,axiom,
    ( ring_1_of_int_int
    = ( ^ [K2: int] : ( if_int @ ( ord_less_int @ K2 @ zero_zero_int ) @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ ( nat2 @ ( uminus_uminus_int @ K2 ) ) ) ) @ ( semiri1314217659103216013at_int @ ( nat2 @ K2 ) ) ) ) ) ).

% of_int_of_nat
thf(fact_1888_of__int__of__nat,axiom,
    ( ring_18347121197199848620nteger
    = ( ^ [K2: int] : ( if_Code_integer @ ( ord_less_int @ K2 @ zero_zero_int ) @ ( uminus1351360451143612070nteger @ ( semiri4939895301339042750nteger @ ( nat2 @ ( uminus_uminus_int @ K2 ) ) ) ) @ ( semiri4939895301339042750nteger @ ( nat2 @ K2 ) ) ) ) ) ).

% of_int_of_nat
thf(fact_1889_of__int__of__nat,axiom,
    ( ring_1_of_int_rat
    = ( ^ [K2: int] : ( if_rat @ ( ord_less_int @ K2 @ zero_zero_int ) @ ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ ( nat2 @ ( uminus_uminus_int @ K2 ) ) ) ) @ ( semiri681578069525770553at_rat @ ( nat2 @ K2 ) ) ) ) ) ).

% of_int_of_nat
thf(fact_1890_frac__ge__0,axiom,
    ! [X2: rat] : ( ord_less_eq_rat @ zero_zero_rat @ ( archimedean_frac_rat @ X2 ) ) ).

% frac_ge_0
thf(fact_1891_frac__lt__1,axiom,
    ! [X2: rat] : ( ord_less_rat @ ( archimedean_frac_rat @ X2 ) @ one_one_rat ) ).

% frac_lt_1
thf(fact_1892_frac__1__eq,axiom,
    ! [X2: rat] :
      ( ( archimedean_frac_rat @ ( plus_plus_rat @ X2 @ one_one_rat ) )
      = ( archimedean_frac_rat @ X2 ) ) ).

% frac_1_eq
thf(fact_1893_le__minus__one__simps_I1_J,axiom,
    ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ zero_z3403309356797280102nteger ).

% le_minus_one_simps(1)
thf(fact_1894_le__minus__one__simps_I1_J,axiom,
    ord_less_eq_rat @ ( uminus_uminus_rat @ one_one_rat ) @ zero_zero_rat ).

% le_minus_one_simps(1)
thf(fact_1895_le__minus__one__simps_I1_J,axiom,
    ord_less_eq_int @ ( uminus_uminus_int @ one_one_int ) @ zero_zero_int ).

% le_minus_one_simps(1)
thf(fact_1896_le__minus__one__simps_I3_J,axiom,
    ~ ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% le_minus_one_simps(3)
thf(fact_1897_le__minus__one__simps_I3_J,axiom,
    ~ ( ord_less_eq_rat @ zero_zero_rat @ ( uminus_uminus_rat @ one_one_rat ) ) ).

% le_minus_one_simps(3)
thf(fact_1898_le__minus__one__simps_I3_J,axiom,
    ~ ( ord_less_eq_int @ zero_zero_int @ ( uminus_uminus_int @ one_one_int ) ) ).

% le_minus_one_simps(3)
thf(fact_1899_less__minus__one__simps_I1_J,axiom,
    ord_less_int @ ( uminus_uminus_int @ one_one_int ) @ zero_zero_int ).

% less_minus_one_simps(1)
thf(fact_1900_less__minus__one__simps_I1_J,axiom,
    ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ zero_z3403309356797280102nteger ).

% less_minus_one_simps(1)
thf(fact_1901_less__minus__one__simps_I1_J,axiom,
    ord_less_rat @ ( uminus_uminus_rat @ one_one_rat ) @ zero_zero_rat ).

% less_minus_one_simps(1)
thf(fact_1902_less__minus__one__simps_I3_J,axiom,
    ~ ( ord_less_int @ zero_zero_int @ ( uminus_uminus_int @ one_one_int ) ) ).

% less_minus_one_simps(3)
thf(fact_1903_less__minus__one__simps_I3_J,axiom,
    ~ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% less_minus_one_simps(3)
thf(fact_1904_less__minus__one__simps_I3_J,axiom,
    ~ ( ord_less_rat @ zero_zero_rat @ ( uminus_uminus_rat @ one_one_rat ) ) ).

% less_minus_one_simps(3)
thf(fact_1905_int__cases3,axiom,
    ! [K: int] :
      ( ( K != zero_zero_int )
     => ( ! [N2: nat] :
            ( ( K
              = ( semiri1314217659103216013at_int @ N2 ) )
           => ~ ( ord_less_nat @ zero_zero_nat @ N2 ) )
       => ~ ! [N2: nat] :
              ( ( K
                = ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N2 ) ) )
             => ~ ( ord_less_nat @ zero_zero_nat @ N2 ) ) ) ) ).

% int_cases3
thf(fact_1906_int__zle__neg,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ N ) @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ M ) ) )
      = ( ( N = zero_zero_nat )
        & ( M = zero_zero_nat ) ) ) ).

% int_zle_neg
thf(fact_1907_nonpos__int__cases,axiom,
    ! [K: int] :
      ( ( ord_less_eq_int @ K @ zero_zero_int )
     => ~ ! [N2: nat] :
            ( K
           != ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N2 ) ) ) ) ).

% nonpos_int_cases
thf(fact_1908_negative__zle__0,axiom,
    ! [N: nat] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) @ zero_zero_int ) ).

% negative_zle_0
thf(fact_1909_zless__iff__Suc__zadd,axiom,
    ( ord_less_int
    = ( ^ [W: int,Z3: int] :
        ? [N3: nat] :
          ( Z3
          = ( plus_plus_int @ W @ ( semiri1314217659103216013at_int @ ( suc @ N3 ) ) ) ) ) ) ).

% zless_iff_Suc_zadd
thf(fact_1910_int__Suc,axiom,
    ! [N: nat] :
      ( ( semiri1314217659103216013at_int @ ( suc @ N ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ N ) @ one_one_int ) ) ).

% int_Suc
thf(fact_1911_int__ops_I4_J,axiom,
    ! [A: nat] :
      ( ( semiri1314217659103216013at_int @ ( suc @ A ) )
      = ( plus_plus_int @ ( semiri1314217659103216013at_int @ A ) @ one_one_int ) ) ).

% int_ops(4)
thf(fact_1912_neg__int__cases,axiom,
    ! [K: int] :
      ( ( ord_less_int @ K @ zero_zero_int )
     => ~ ! [N2: nat] :
            ( ( K
              = ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N2 ) ) )
           => ~ ( ord_less_nat @ zero_zero_nat @ N2 ) ) ) ).

% neg_int_cases
thf(fact_1913_Suc__as__int,axiom,
    ( suc
    = ( ^ [A2: nat] : ( nat2 @ ( plus_plus_int @ ( semiri1314217659103216013at_int @ A2 ) @ one_one_int ) ) ) ) ).

% Suc_as_int
thf(fact_1914_frac__eq,axiom,
    ! [X2: rat] :
      ( ( ( archimedean_frac_rat @ X2 )
        = X2 )
      = ( ( ord_less_eq_rat @ zero_zero_rat @ X2 )
        & ( ord_less_rat @ X2 @ one_one_rat ) ) ) ).

% frac_eq
thf(fact_1915_length__code,axiom,
    ( size_size_list_nat
    = ( gen_length_nat @ zero_zero_nat ) ) ).

% length_code
thf(fact_1916_length__code,axiom,
    ( size_size_list_int
    = ( gen_length_int @ zero_zero_nat ) ) ).

% length_code
thf(fact_1917_length__code,axiom,
    ( size_size_list_o
    = ( gen_length_o @ zero_zero_nat ) ) ).

% length_code
thf(fact_1918_compl__le__compl__iff,axiom,
    ! [X2: set_nat,Y: set_nat] :
      ( ( ord_less_eq_set_nat @ ( uminus5710092332889474511et_nat @ X2 ) @ ( uminus5710092332889474511et_nat @ Y ) )
      = ( ord_less_eq_set_nat @ Y @ X2 ) ) ).

% compl_le_compl_iff
thf(fact_1919_power__int__minus__one__minus,axiom,
    ! [N: int] :
      ( ( power_int_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( uminus_uminus_int @ N ) )
      = ( power_int_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) ) ).

% power_int_minus_one_minus
thf(fact_1920_dbl__dec__simps_I2_J,axiom,
    ( ( neg_nu3811975205180677377ec_int @ zero_zero_int )
    = ( uminus_uminus_int @ one_one_int ) ) ).

% dbl_dec_simps(2)
thf(fact_1921_dbl__dec__simps_I2_J,axiom,
    ( ( neg_nu7757733837767384882nteger @ zero_z3403309356797280102nteger )
    = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% dbl_dec_simps(2)
thf(fact_1922_dbl__dec__simps_I2_J,axiom,
    ( ( neg_nu3179335615603231917ec_rat @ zero_zero_rat )
    = ( uminus_uminus_rat @ one_one_rat ) ) ).

% dbl_dec_simps(2)
thf(fact_1923_nat__descend__induct,axiom,
    ! [N: nat,P: nat > $o,M: nat] :
      ( ! [K3: nat] :
          ( ( ord_less_nat @ N @ K3 )
         => ( P @ K3 ) )
     => ( ! [K3: nat] :
            ( ( ord_less_eq_nat @ K3 @ N )
           => ( ! [I4: nat] :
                  ( ( ord_less_nat @ K3 @ I4 )
                 => ( P @ I4 ) )
             => ( P @ K3 ) ) )
       => ( P @ M ) ) ) ).

% nat_descend_induct
thf(fact_1924_list__decode_Ocases,axiom,
    ! [X2: nat] :
      ( ( X2 != zero_zero_nat )
     => ~ ! [N2: nat] :
            ( X2
           != ( suc @ N2 ) ) ) ).

% list_decode.cases
thf(fact_1925_compl__le__swap2,axiom,
    ! [Y: set_nat,X2: set_nat] :
      ( ( ord_less_eq_set_nat @ ( uminus5710092332889474511et_nat @ Y ) @ X2 )
     => ( ord_less_eq_set_nat @ ( uminus5710092332889474511et_nat @ X2 ) @ Y ) ) ).

% compl_le_swap2
thf(fact_1926_compl__le__swap1,axiom,
    ! [Y: set_nat,X2: set_nat] :
      ( ( ord_less_eq_set_nat @ Y @ ( uminus5710092332889474511et_nat @ X2 ) )
     => ( ord_less_eq_set_nat @ X2 @ ( uminus5710092332889474511et_nat @ Y ) ) ) ).

% compl_le_swap1
thf(fact_1927_compl__mono,axiom,
    ! [X2: set_nat,Y: set_nat] :
      ( ( ord_less_eq_set_nat @ X2 @ Y )
     => ( ord_less_eq_set_nat @ ( uminus5710092332889474511et_nat @ Y ) @ ( uminus5710092332889474511et_nat @ X2 ) ) ) ).

% compl_mono
thf(fact_1928_dbl__dec__simps_I3_J,axiom,
    ( ( neg_nu3811975205180677377ec_int @ one_one_int )
    = one_one_int ) ).

% dbl_dec_simps(3)
thf(fact_1929_dbl__dec__simps_I3_J,axiom,
    ( ( neg_nu7757733837767384882nteger @ one_one_Code_integer )
    = one_one_Code_integer ) ).

% dbl_dec_simps(3)
thf(fact_1930_dbl__dec__simps_I3_J,axiom,
    ( ( neg_nu3179335615603231917ec_rat @ one_one_rat )
    = one_one_rat ) ).

% dbl_dec_simps(3)
thf(fact_1931_triangle__Suc,axiom,
    ! [N: nat] :
      ( ( nat_triangle @ ( suc @ N ) )
      = ( plus_plus_nat @ ( nat_triangle @ N ) @ ( suc @ N ) ) ) ).

% triangle_Suc
thf(fact_1932_bot__nat__0_Oordering__top__axioms,axiom,
    ( ordering_top_nat
    @ ^ [X: nat,Y4: nat] : ( ord_less_eq_nat @ Y4 @ X )
    @ ^ [X: nat,Y4: nat] : ( ord_less_nat @ Y4 @ X )
    @ zero_zero_nat ) ).

% bot_nat_0.ordering_top_axioms
thf(fact_1933_power__int__add__1_H,axiom,
    ! [X2: rat,M: int] :
      ( ( ( X2 != zero_zero_rat )
        | ( M
         != ( uminus_uminus_int @ one_one_int ) ) )
     => ( ( power_int_rat @ X2 @ ( plus_plus_int @ M @ one_one_int ) )
        = ( times_times_rat @ X2 @ ( power_int_rat @ X2 @ M ) ) ) ) ).

% power_int_add_1'
thf(fact_1934_power__int__add__1,axiom,
    ! [X2: rat,M: int] :
      ( ( ( X2 != zero_zero_rat )
        | ( M
         != ( uminus_uminus_int @ one_one_int ) ) )
     => ( ( power_int_rat @ X2 @ ( plus_plus_int @ M @ one_one_int ) )
        = ( times_times_rat @ ( power_int_rat @ X2 @ M ) @ X2 ) ) ) ).

% power_int_add_1
thf(fact_1935_length__ge__1__conv,axiom,
    ! [L: list_char] :
      ( ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( size_size_list_char @ L ) )
      = ( L != nil_char ) ) ).

% length_ge_1_conv
thf(fact_1936_length__ge__1__conv,axiom,
    ! [L: list_nat] :
      ( ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( size_size_list_nat @ L ) )
      = ( L != nil_nat ) ) ).

% length_ge_1_conv
thf(fact_1937_length__ge__1__conv,axiom,
    ! [L: list_int] :
      ( ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( size_size_list_int @ L ) )
      = ( L != nil_int ) ) ).

% length_ge_1_conv
thf(fact_1938_length__ge__1__conv,axiom,
    ! [L: list_o] :
      ( ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( size_size_list_o @ L ) )
      = ( L != nil_o ) ) ).

% length_ge_1_conv
thf(fact_1939_foldr__length,axiom,
    ! [L: list_nat] :
      ( ( foldr_nat_nat
        @ ^ [X: nat] : suc
        @ L
        @ zero_zero_nat )
      = ( size_size_list_nat @ L ) ) ).

% foldr_length
thf(fact_1940_foldr__length,axiom,
    ! [L: list_int] :
      ( ( foldr_int_nat
        @ ^ [X: int] : suc
        @ L
        @ zero_zero_nat )
      = ( size_size_list_int @ L ) ) ).

% foldr_length
thf(fact_1941_foldr__length,axiom,
    ! [L: list_o] :
      ( ( foldr_o_nat
        @ ^ [X: $o] : suc
        @ L
        @ zero_zero_nat )
      = ( size_size_list_o @ L ) ) ).

% foldr_length
thf(fact_1942_le__ceiling__iff,axiom,
    ! [Z2: int,X2: rat] :
      ( ( ord_less_eq_int @ Z2 @ ( archim2889992004027027881ng_rat @ X2 ) )
      = ( ord_less_rat @ ( minus_minus_rat @ ( ring_1_of_int_rat @ Z2 ) @ one_one_rat ) @ X2 ) ) ).

% le_ceiling_iff
thf(fact_1943_diff__self__eq__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ M )
      = zero_zero_nat ) ).

% diff_self_eq_0
thf(fact_1944_diff__0__eq__0,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% diff_0_eq_0
thf(fact_1945_mult__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ( times_times_nat @ M @ K )
        = ( times_times_nat @ N @ K ) )
      = ( ( M = N )
        | ( K = zero_zero_nat ) ) ) ).

% mult_cancel2
thf(fact_1946_mult__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( times_times_nat @ K @ M )
        = ( times_times_nat @ K @ N ) )
      = ( ( M = N )
        | ( K = zero_zero_nat ) ) ) ).

% mult_cancel1
thf(fact_1947_mult__0__right,axiom,
    ! [M: nat] :
      ( ( times_times_nat @ M @ zero_zero_nat )
      = zero_zero_nat ) ).

% mult_0_right
thf(fact_1948_mult__is__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ( times_times_nat @ M @ N )
        = zero_zero_nat )
      = ( ( M = zero_zero_nat )
        | ( N = zero_zero_nat ) ) ) ).

% mult_is_0
thf(fact_1949_Suc__diff__diff,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ ( suc @ M ) @ N ) @ ( suc @ K ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M @ N ) @ K ) ) ).

% Suc_diff_diff
thf(fact_1950_diff__Suc__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% diff_Suc_Suc
thf(fact_1951_diff__diff__cancel,axiom,
    ! [I: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ N )
     => ( ( minus_minus_nat @ N @ ( minus_minus_nat @ N @ I ) )
        = I ) ) ).

% diff_diff_cancel
thf(fact_1952_diff__diff__left,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J ) @ K )
      = ( minus_minus_nat @ I @ ( plus_plus_nat @ J @ K ) ) ) ).

% diff_diff_left
thf(fact_1953_nat__1__eq__mult__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( one_one_nat
        = ( times_times_nat @ M @ N ) )
      = ( ( M = one_one_nat )
        & ( N = one_one_nat ) ) ) ).

% nat_1_eq_mult_iff
thf(fact_1954_nat__mult__eq__1__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( times_times_nat @ M @ N )
        = one_one_nat )
      = ( ( M = one_one_nat )
        & ( N = one_one_nat ) ) ) ).

% nat_mult_eq_1_iff
thf(fact_1955_mult__zero__left,axiom,
    ! [A: code_natural] :
      ( ( times_2397367101498566445atural @ zero_z2226904508553997617atural @ A )
      = zero_z2226904508553997617atural ) ).

% mult_zero_left
thf(fact_1956_mult__zero__left,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ zero_z3403309356797280102nteger @ A )
      = zero_z3403309356797280102nteger ) ).

% mult_zero_left
thf(fact_1957_mult__zero__left,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ zero_zero_rat @ A )
      = zero_zero_rat ) ).

% mult_zero_left
thf(fact_1958_mult__zero__left,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% mult_zero_left
thf(fact_1959_mult__zero__left,axiom,
    ! [A: int] :
      ( ( times_times_int @ zero_zero_int @ A )
      = zero_zero_int ) ).

% mult_zero_left
thf(fact_1960_mult__zero__right,axiom,
    ! [A: code_natural] :
      ( ( times_2397367101498566445atural @ A @ zero_z2226904508553997617atural )
      = zero_z2226904508553997617atural ) ).

% mult_zero_right
thf(fact_1961_mult__zero__right,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ A @ zero_z3403309356797280102nteger )
      = zero_z3403309356797280102nteger ) ).

% mult_zero_right
thf(fact_1962_mult__zero__right,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ A @ zero_zero_rat )
      = zero_zero_rat ) ).

% mult_zero_right
thf(fact_1963_mult__zero__right,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ A @ zero_zero_nat )
      = zero_zero_nat ) ).

% mult_zero_right
thf(fact_1964_mult__zero__right,axiom,
    ! [A: int] :
      ( ( times_times_int @ A @ zero_zero_int )
      = zero_zero_int ) ).

% mult_zero_right
thf(fact_1965_mult__eq__0__iff,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ( times_2397367101498566445atural @ A @ B )
        = zero_z2226904508553997617atural )
      = ( ( A = zero_z2226904508553997617atural )
        | ( B = zero_z2226904508553997617atural ) ) ) ).

% mult_eq_0_iff
thf(fact_1966_mult__eq__0__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( times_3573771949741848930nteger @ A @ B )
        = zero_z3403309356797280102nteger )
      = ( ( A = zero_z3403309356797280102nteger )
        | ( B = zero_z3403309356797280102nteger ) ) ) ).

% mult_eq_0_iff
thf(fact_1967_mult__eq__0__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ( times_times_rat @ A @ B )
        = zero_zero_rat )
      = ( ( A = zero_zero_rat )
        | ( B = zero_zero_rat ) ) ) ).

% mult_eq_0_iff
thf(fact_1968_mult__eq__0__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( times_times_nat @ A @ B )
        = zero_zero_nat )
      = ( ( A = zero_zero_nat )
        | ( B = zero_zero_nat ) ) ) ).

% mult_eq_0_iff
thf(fact_1969_mult__eq__0__iff,axiom,
    ! [A: int,B: int] :
      ( ( ( times_times_int @ A @ B )
        = zero_zero_int )
      = ( ( A = zero_zero_int )
        | ( B = zero_zero_int ) ) ) ).

% mult_eq_0_iff
thf(fact_1970_mult__cancel__left,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( ( times_2397367101498566445atural @ C @ A )
        = ( times_2397367101498566445atural @ C @ B ) )
      = ( ( C = zero_z2226904508553997617atural )
        | ( A = B ) ) ) ).

% mult_cancel_left
thf(fact_1971_mult__cancel__left,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ( times_3573771949741848930nteger @ C @ A )
        = ( times_3573771949741848930nteger @ C @ B ) )
      = ( ( C = zero_z3403309356797280102nteger )
        | ( A = B ) ) ) ).

% mult_cancel_left
thf(fact_1972_mult__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ( times_times_rat @ C @ A )
        = ( times_times_rat @ C @ B ) )
      = ( ( C = zero_zero_rat )
        | ( A = B ) ) ) ).

% mult_cancel_left
thf(fact_1973_mult__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ( times_times_nat @ C @ A )
        = ( times_times_nat @ C @ B ) )
      = ( ( C = zero_zero_nat )
        | ( A = B ) ) ) ).

% mult_cancel_left
thf(fact_1974_mult__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ( times_times_int @ C @ A )
        = ( times_times_int @ C @ B ) )
      = ( ( C = zero_zero_int )
        | ( A = B ) ) ) ).

% mult_cancel_left
thf(fact_1975_mult__cancel__right,axiom,
    ! [A: code_natural,C: code_natural,B: code_natural] :
      ( ( ( times_2397367101498566445atural @ A @ C )
        = ( times_2397367101498566445atural @ B @ C ) )
      = ( ( C = zero_z2226904508553997617atural )
        | ( A = B ) ) ) ).

% mult_cancel_right
thf(fact_1976_mult__cancel__right,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ( times_3573771949741848930nteger @ A @ C )
        = ( times_3573771949741848930nteger @ B @ C ) )
      = ( ( C = zero_z3403309356797280102nteger )
        | ( A = B ) ) ) ).

% mult_cancel_right
thf(fact_1977_mult__cancel__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ( times_times_rat @ A @ C )
        = ( times_times_rat @ B @ C ) )
      = ( ( C = zero_zero_rat )
        | ( A = B ) ) ) ).

% mult_cancel_right
thf(fact_1978_mult__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ( times_times_nat @ A @ C )
        = ( times_times_nat @ B @ C ) )
      = ( ( C = zero_zero_nat )
        | ( A = B ) ) ) ).

% mult_cancel_right
thf(fact_1979_mult__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ( times_times_int @ A @ C )
        = ( times_times_int @ B @ C ) )
      = ( ( C = zero_zero_int )
        | ( A = B ) ) ) ).

% mult_cancel_right
thf(fact_1980_diff__self,axiom,
    ! [A: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ A )
      = zero_z3403309356797280102nteger ) ).

% diff_self
thf(fact_1981_diff__self,axiom,
    ! [A: rat] :
      ( ( minus_minus_rat @ A @ A )
      = zero_zero_rat ) ).

% diff_self
thf(fact_1982_diff__self,axiom,
    ! [A: int] :
      ( ( minus_minus_int @ A @ A )
      = zero_zero_int ) ).

% diff_self
thf(fact_1983_diff__0__right,axiom,
    ! [A: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ zero_z3403309356797280102nteger )
      = A ) ).

% diff_0_right
thf(fact_1984_diff__0__right,axiom,
    ! [A: rat] :
      ( ( minus_minus_rat @ A @ zero_zero_rat )
      = A ) ).

% diff_0_right
thf(fact_1985_diff__0__right,axiom,
    ! [A: int] :
      ( ( minus_minus_int @ A @ zero_zero_int )
      = A ) ).

% diff_0_right
thf(fact_1986_zero__diff,axiom,
    ! [A: code_natural] :
      ( ( minus_7197305767214868737atural @ zero_z2226904508553997617atural @ A )
      = zero_z2226904508553997617atural ) ).

% zero_diff
thf(fact_1987_zero__diff,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% zero_diff
thf(fact_1988_diff__zero,axiom,
    ! [A: code_natural] :
      ( ( minus_7197305767214868737atural @ A @ zero_z2226904508553997617atural )
      = A ) ).

% diff_zero
thf(fact_1989_diff__zero,axiom,
    ! [A: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ zero_z3403309356797280102nteger )
      = A ) ).

% diff_zero
thf(fact_1990_diff__zero,axiom,
    ! [A: rat] :
      ( ( minus_minus_rat @ A @ zero_zero_rat )
      = A ) ).

% diff_zero
thf(fact_1991_diff__zero,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ A @ zero_zero_nat )
      = A ) ).

% diff_zero
thf(fact_1992_diff__zero,axiom,
    ! [A: int] :
      ( ( minus_minus_int @ A @ zero_zero_int )
      = A ) ).

% diff_zero
thf(fact_1993_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A: code_natural] :
      ( ( minus_7197305767214868737atural @ A @ A )
      = zero_z2226904508553997617atural ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_1994_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ A )
      = zero_z3403309356797280102nteger ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_1995_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A: rat] :
      ( ( minus_minus_rat @ A @ A )
      = zero_zero_rat ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_1996_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ A @ A )
      = zero_zero_nat ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_1997_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A: int] :
      ( ( minus_minus_int @ A @ A )
      = zero_zero_int ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_1998_mult__1,axiom,
    ! [A: code_natural] :
      ( ( times_2397367101498566445atural @ one_one_Code_natural @ A )
      = A ) ).

% mult_1
thf(fact_1999_mult__1,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ one_one_Code_integer @ A )
      = A ) ).

% mult_1
thf(fact_2000_mult__1,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ one_one_rat @ A )
      = A ) ).

% mult_1
thf(fact_2001_mult__1,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ one_one_nat @ A )
      = A ) ).

% mult_1
thf(fact_2002_mult__1,axiom,
    ! [A: int] :
      ( ( times_times_int @ one_one_int @ A )
      = A ) ).

% mult_1
thf(fact_2003_mult_Oright__neutral,axiom,
    ! [A: code_natural] :
      ( ( times_2397367101498566445atural @ A @ one_one_Code_natural )
      = A ) ).

% mult.right_neutral
thf(fact_2004_mult_Oright__neutral,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ A @ one_one_Code_integer )
      = A ) ).

% mult.right_neutral
thf(fact_2005_mult_Oright__neutral,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ A @ one_one_rat )
      = A ) ).

% mult.right_neutral
thf(fact_2006_mult_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ A @ one_one_nat )
      = A ) ).

% mult.right_neutral
thf(fact_2007_mult_Oright__neutral,axiom,
    ! [A: int] :
      ( ( times_times_int @ A @ one_one_int )
      = A ) ).

% mult.right_neutral
thf(fact_2008_add__diff__cancel__right_H,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_2009_add__diff__cancel__right_H,axiom,
    ! [A: rat,B: rat] :
      ( ( minus_minus_rat @ ( plus_plus_rat @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_2010_add__diff__cancel__right_H,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_2011_add__diff__cancel__right_H,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_2012_add__diff__cancel__right,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ ( plus_p5714425477246183910nteger @ B @ C ) )
      = ( minus_8373710615458151222nteger @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_2013_add__diff__cancel__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( minus_minus_rat @ ( plus_plus_rat @ A @ C ) @ ( plus_plus_rat @ B @ C ) )
      = ( minus_minus_rat @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_2014_add__diff__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( minus_minus_nat @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_2015_add__diff__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
      = ( minus_minus_int @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_2016_add__diff__cancel__left_H,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_2017_add__diff__cancel__left_H,axiom,
    ! [A: rat,B: rat] :
      ( ( minus_minus_rat @ ( plus_plus_rat @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_2018_add__diff__cancel__left_H,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_2019_add__diff__cancel__left_H,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_2020_add__diff__cancel__left,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ C @ A ) @ ( plus_p5714425477246183910nteger @ C @ B ) )
      = ( minus_8373710615458151222nteger @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_2021_add__diff__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( minus_minus_rat @ ( plus_plus_rat @ C @ A ) @ ( plus_plus_rat @ C @ B ) )
      = ( minus_minus_rat @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_2022_add__diff__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( minus_minus_nat @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_2023_add__diff__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
      = ( minus_minus_int @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_2024_diff__add__cancel,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ B )
      = A ) ).

% diff_add_cancel
thf(fact_2025_diff__add__cancel,axiom,
    ! [A: rat,B: rat] :
      ( ( plus_plus_rat @ ( minus_minus_rat @ A @ B ) @ B )
      = A ) ).

% diff_add_cancel
thf(fact_2026_diff__add__cancel,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( minus_minus_int @ A @ B ) @ B )
      = A ) ).

% diff_add_cancel
thf(fact_2027_add__diff__cancel,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel
thf(fact_2028_add__diff__cancel,axiom,
    ! [A: rat,B: rat] :
      ( ( minus_minus_rat @ ( plus_plus_rat @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel
thf(fact_2029_add__diff__cancel,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel
thf(fact_2030_minus__diff__eq,axiom,
    ! [A: int,B: int] :
      ( ( uminus_uminus_int @ ( minus_minus_int @ A @ B ) )
      = ( minus_minus_int @ B @ A ) ) ).

% minus_diff_eq
thf(fact_2031_minus__diff__eq,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( uminus1351360451143612070nteger @ ( minus_8373710615458151222nteger @ A @ B ) )
      = ( minus_8373710615458151222nteger @ B @ A ) ) ).

% minus_diff_eq
thf(fact_2032_minus__diff__eq,axiom,
    ! [A: rat,B: rat] :
      ( ( uminus_uminus_rat @ ( minus_minus_rat @ A @ B ) )
      = ( minus_minus_rat @ B @ A ) ) ).

% minus_diff_eq
thf(fact_2033_one__eq__mult__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( suc @ zero_zero_nat )
        = ( times_times_nat @ M @ N ) )
      = ( ( M
          = ( suc @ zero_zero_nat ) )
        & ( N
          = ( suc @ zero_zero_nat ) ) ) ) ).

% one_eq_mult_iff
thf(fact_2034_mult__eq__1__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( times_times_nat @ M @ N )
        = ( suc @ zero_zero_nat ) )
      = ( ( M
          = ( suc @ zero_zero_nat ) )
        & ( N
          = ( suc @ zero_zero_nat ) ) ) ) ).

% mult_eq_1_iff
thf(fact_2035_zero__less__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M ) )
      = ( ord_less_nat @ M @ N ) ) ).

% zero_less_diff
thf(fact_2036_nat__0__less__mult__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ M @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% nat_0_less_mult_iff
thf(fact_2037_mult__less__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
        & ( ord_less_nat @ M @ N ) ) ) ).

% mult_less_cancel2
thf(fact_2038_of__nat__mult,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri1314217659103216013at_int @ ( times_times_nat @ M @ N ) )
      = ( times_times_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) ) ).

% of_nat_mult
thf(fact_2039_of__nat__mult,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri1316708129612266289at_nat @ ( times_times_nat @ M @ N ) )
      = ( times_times_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) ) ) ).

% of_nat_mult
thf(fact_2040_of__nat__mult,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri4939895301339042750nteger @ ( times_times_nat @ M @ N ) )
      = ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ M ) @ ( semiri4939895301339042750nteger @ N ) ) ) ).

% of_nat_mult
thf(fact_2041_of__nat__mult,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri681578069525770553at_rat @ ( times_times_nat @ M @ N ) )
      = ( times_times_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ N ) ) ) ).

% of_nat_mult
thf(fact_2042_of__nat__mult,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri3763490453095760265atural @ ( times_times_nat @ M @ N ) )
      = ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ M ) @ ( semiri3763490453095760265atural @ N ) ) ) ).

% of_nat_mult
thf(fact_2043_diff__is__0__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% diff_is_0_eq
thf(fact_2044_diff__is__0__eq_H,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat ) ) ).

% diff_is_0_eq'
thf(fact_2045_mult__Suc__right,axiom,
    ! [M: nat,N: nat] :
      ( ( times_times_nat @ M @ ( suc @ N ) )
      = ( plus_plus_nat @ M @ ( times_times_nat @ M @ N ) ) ) ).

% mult_Suc_right
thf(fact_2046_Nat_Oadd__diff__assoc,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( plus_plus_nat @ I @ ( minus_minus_nat @ J @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ J ) @ K ) ) ) ).

% Nat.add_diff_assoc
thf(fact_2047_Nat_Oadd__diff__assoc2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ J @ K ) @ I )
        = ( minus_minus_nat @ ( plus_plus_nat @ J @ I ) @ K ) ) ) ).

% Nat.add_diff_assoc2
thf(fact_2048_Nat_Odiff__diff__right,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ I @ ( minus_minus_nat @ J @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ) ).

% Nat.diff_diff_right
thf(fact_2049_of__int__mult,axiom,
    ! [W2: int,Z2: int] :
      ( ( ring_18347121197199848620nteger @ ( times_times_int @ W2 @ Z2 ) )
      = ( times_3573771949741848930nteger @ ( ring_18347121197199848620nteger @ W2 ) @ ( ring_18347121197199848620nteger @ Z2 ) ) ) ).

% of_int_mult
thf(fact_2050_of__int__mult,axiom,
    ! [W2: int,Z2: int] :
      ( ( ring_1_of_int_rat @ ( times_times_int @ W2 @ Z2 ) )
      = ( times_times_rat @ ( ring_1_of_int_rat @ W2 ) @ ( ring_1_of_int_rat @ Z2 ) ) ) ).

% of_int_mult
thf(fact_2051_of__int__mult,axiom,
    ! [W2: int,Z2: int] :
      ( ( ring_1_of_int_int @ ( times_times_int @ W2 @ Z2 ) )
      = ( times_times_int @ ( ring_1_of_int_int @ W2 ) @ ( ring_1_of_int_int @ Z2 ) ) ) ).

% of_int_mult
thf(fact_2052_diff__Suc__1,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ ( suc @ N ) @ one_one_nat )
      = N ) ).

% diff_Suc_1
thf(fact_2053_of__int__diff,axiom,
    ! [W2: int,Z2: int] :
      ( ( ring_18347121197199848620nteger @ ( minus_minus_int @ W2 @ Z2 ) )
      = ( minus_8373710615458151222nteger @ ( ring_18347121197199848620nteger @ W2 ) @ ( ring_18347121197199848620nteger @ Z2 ) ) ) ).

% of_int_diff
thf(fact_2054_of__int__diff,axiom,
    ! [W2: int,Z2: int] :
      ( ( ring_1_of_int_rat @ ( minus_minus_int @ W2 @ Z2 ) )
      = ( minus_minus_rat @ ( ring_1_of_int_rat @ W2 ) @ ( ring_1_of_int_rat @ Z2 ) ) ) ).

% of_int_diff
thf(fact_2055_of__int__diff,axiom,
    ! [W2: int,Z2: int] :
      ( ( ring_1_of_int_int @ ( minus_minus_int @ W2 @ Z2 ) )
      = ( minus_minus_int @ ( ring_1_of_int_int @ W2 ) @ ( ring_1_of_int_int @ Z2 ) ) ) ).

% of_int_diff
thf(fact_2056_triangle__0,axiom,
    ( ( nat_triangle @ zero_zero_nat )
    = zero_zero_nat ) ).

% triangle_0
thf(fact_2057_diff__ge__0__iff__ge,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( minus_8373710615458151222nteger @ A @ B ) )
      = ( ord_le3102999989581377725nteger @ B @ A ) ) ).

% diff_ge_0_iff_ge
thf(fact_2058_diff__ge__0__iff__ge,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( minus_minus_rat @ A @ B ) )
      = ( ord_less_eq_rat @ B @ A ) ) ).

% diff_ge_0_iff_ge
thf(fact_2059_diff__ge__0__iff__ge,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( minus_minus_int @ A @ B ) )
      = ( ord_less_eq_int @ B @ A ) ) ).

% diff_ge_0_iff_ge
thf(fact_2060_zero__comp__diff__simps_I1_J,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( minus_8373710615458151222nteger @ A @ B ) )
      = ( ord_le3102999989581377725nteger @ B @ A ) ) ).

% zero_comp_diff_simps(1)
thf(fact_2061_zero__comp__diff__simps_I1_J,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( minus_minus_rat @ A @ B ) )
      = ( ord_less_eq_rat @ B @ A ) ) ).

% zero_comp_diff_simps(1)
thf(fact_2062_zero__comp__diff__simps_I1_J,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( minus_minus_int @ A @ B ) )
      = ( ord_less_eq_int @ B @ A ) ) ).

% zero_comp_diff_simps(1)
thf(fact_2063_diff__gt__0__iff__gt,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( minus_8373710615458151222nteger @ A @ B ) )
      = ( ord_le6747313008572928689nteger @ B @ A ) ) ).

% diff_gt_0_iff_gt
thf(fact_2064_diff__gt__0__iff__gt,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( minus_minus_rat @ A @ B ) )
      = ( ord_less_rat @ B @ A ) ) ).

% diff_gt_0_iff_gt
thf(fact_2065_diff__gt__0__iff__gt,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ ( minus_minus_int @ A @ B ) )
      = ( ord_less_int @ B @ A ) ) ).

% diff_gt_0_iff_gt
thf(fact_2066_zero__comp__diff__simps_I2_J,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( minus_8373710615458151222nteger @ A @ B ) )
      = ( ord_le6747313008572928689nteger @ B @ A ) ) ).

% zero_comp_diff_simps(2)
thf(fact_2067_zero__comp__diff__simps_I2_J,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( minus_minus_rat @ A @ B ) )
      = ( ord_less_rat @ B @ A ) ) ).

% zero_comp_diff_simps(2)
thf(fact_2068_zero__comp__diff__simps_I2_J,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ ( minus_minus_int @ A @ B ) )
      = ( ord_less_int @ B @ A ) ) ).

% zero_comp_diff_simps(2)
thf(fact_2069_le__add__diff__inverse,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ B @ A )
     => ( ( plus_p5714425477246183910nteger @ B @ ( minus_8373710615458151222nteger @ A @ B ) )
        = A ) ) ).

% le_add_diff_inverse
thf(fact_2070_le__add__diff__inverse,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_eq_rat @ B @ A )
     => ( ( plus_plus_rat @ B @ ( minus_minus_rat @ A @ B ) )
        = A ) ) ).

% le_add_diff_inverse
thf(fact_2071_le__add__diff__inverse,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( plus_plus_nat @ B @ ( minus_minus_nat @ A @ B ) )
        = A ) ) ).

% le_add_diff_inverse
thf(fact_2072_le__add__diff__inverse,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ( plus_plus_int @ B @ ( minus_minus_int @ A @ B ) )
        = A ) ) ).

% le_add_diff_inverse
thf(fact_2073_le__add__diff__inverse2,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ B @ A )
     => ( ( plus_p5714425477246183910nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ B )
        = A ) ) ).

% le_add_diff_inverse2
thf(fact_2074_le__add__diff__inverse2,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_eq_rat @ B @ A )
     => ( ( plus_plus_rat @ ( minus_minus_rat @ A @ B ) @ B )
        = A ) ) ).

% le_add_diff_inverse2
thf(fact_2075_le__add__diff__inverse2,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ A @ B ) @ B )
        = A ) ) ).

% le_add_diff_inverse2
thf(fact_2076_le__add__diff__inverse2,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ( plus_plus_int @ ( minus_minus_int @ A @ B ) @ B )
        = A ) ) ).

% le_add_diff_inverse2
thf(fact_2077_mult__cancel__right2,axiom,
    ! [A: code_integer,C: code_integer] :
      ( ( ( times_3573771949741848930nteger @ A @ C )
        = C )
      = ( ( C = zero_z3403309356797280102nteger )
        | ( A = one_one_Code_integer ) ) ) ).

% mult_cancel_right2
thf(fact_2078_mult__cancel__right2,axiom,
    ! [A: rat,C: rat] :
      ( ( ( times_times_rat @ A @ C )
        = C )
      = ( ( C = zero_zero_rat )
        | ( A = one_one_rat ) ) ) ).

% mult_cancel_right2
thf(fact_2079_mult__cancel__right2,axiom,
    ! [A: int,C: int] :
      ( ( ( times_times_int @ A @ C )
        = C )
      = ( ( C = zero_zero_int )
        | ( A = one_one_int ) ) ) ).

% mult_cancel_right2
thf(fact_2080_mult__cancel__right1,axiom,
    ! [C: code_integer,B: code_integer] :
      ( ( C
        = ( times_3573771949741848930nteger @ B @ C ) )
      = ( ( C = zero_z3403309356797280102nteger )
        | ( B = one_one_Code_integer ) ) ) ).

% mult_cancel_right1
thf(fact_2081_mult__cancel__right1,axiom,
    ! [C: rat,B: rat] :
      ( ( C
        = ( times_times_rat @ B @ C ) )
      = ( ( C = zero_zero_rat )
        | ( B = one_one_rat ) ) ) ).

% mult_cancel_right1
thf(fact_2082_mult__cancel__right1,axiom,
    ! [C: int,B: int] :
      ( ( C
        = ( times_times_int @ B @ C ) )
      = ( ( C = zero_zero_int )
        | ( B = one_one_int ) ) ) ).

% mult_cancel_right1
thf(fact_2083_mult__cancel__left2,axiom,
    ! [C: code_integer,A: code_integer] :
      ( ( ( times_3573771949741848930nteger @ C @ A )
        = C )
      = ( ( C = zero_z3403309356797280102nteger )
        | ( A = one_one_Code_integer ) ) ) ).

% mult_cancel_left2
thf(fact_2084_mult__cancel__left2,axiom,
    ! [C: rat,A: rat] :
      ( ( ( times_times_rat @ C @ A )
        = C )
      = ( ( C = zero_zero_rat )
        | ( A = one_one_rat ) ) ) ).

% mult_cancel_left2
thf(fact_2085_mult__cancel__left2,axiom,
    ! [C: int,A: int] :
      ( ( ( times_times_int @ C @ A )
        = C )
      = ( ( C = zero_zero_int )
        | ( A = one_one_int ) ) ) ).

% mult_cancel_left2
thf(fact_2086_mult__cancel__left1,axiom,
    ! [C: code_integer,B: code_integer] :
      ( ( C
        = ( times_3573771949741848930nteger @ C @ B ) )
      = ( ( C = zero_z3403309356797280102nteger )
        | ( B = one_one_Code_integer ) ) ) ).

% mult_cancel_left1
thf(fact_2087_mult__cancel__left1,axiom,
    ! [C: rat,B: rat] :
      ( ( C
        = ( times_times_rat @ C @ B ) )
      = ( ( C = zero_zero_rat )
        | ( B = one_one_rat ) ) ) ).

% mult_cancel_left1
thf(fact_2088_mult__cancel__left1,axiom,
    ! [C: int,B: int] :
      ( ( C
        = ( times_times_int @ C @ B ) )
      = ( ( C = zero_zero_int )
        | ( B = one_one_int ) ) ) ).

% mult_cancel_left1
thf(fact_2089_diff__add__zero,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( minus_7197305767214868737atural @ A @ ( plus_p4538020629002901425atural @ A @ B ) )
      = zero_z2226904508553997617atural ) ).

% diff_add_zero
thf(fact_2090_diff__add__zero,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = zero_zero_nat ) ).

% diff_add_zero
thf(fact_2091_diff__numeral__special_I9_J,axiom,
    ( ( minus_8373710615458151222nteger @ one_one_Code_integer @ one_one_Code_integer )
    = zero_z3403309356797280102nteger ) ).

% diff_numeral_special(9)
thf(fact_2092_diff__numeral__special_I9_J,axiom,
    ( ( minus_minus_rat @ one_one_rat @ one_one_rat )
    = zero_zero_rat ) ).

% diff_numeral_special(9)
thf(fact_2093_diff__numeral__special_I9_J,axiom,
    ( ( minus_minus_int @ one_one_int @ one_one_int )
    = zero_zero_int ) ).

% diff_numeral_special(9)
thf(fact_2094_diff__0,axiom,
    ! [A: int] :
      ( ( minus_minus_int @ zero_zero_int @ A )
      = ( uminus_uminus_int @ A ) ) ).

% diff_0
thf(fact_2095_diff__0,axiom,
    ! [A: code_integer] :
      ( ( minus_8373710615458151222nteger @ zero_z3403309356797280102nteger @ A )
      = ( uminus1351360451143612070nteger @ A ) ) ).

% diff_0
thf(fact_2096_diff__0,axiom,
    ! [A: rat] :
      ( ( minus_minus_rat @ zero_zero_rat @ A )
      = ( uminus_uminus_rat @ A ) ) ).

% diff_0
thf(fact_2097_verit__minus__simplify_I3_J,axiom,
    ! [B: int] :
      ( ( minus_minus_int @ zero_zero_int @ B )
      = ( uminus_uminus_int @ B ) ) ).

% verit_minus_simplify(3)
thf(fact_2098_verit__minus__simplify_I3_J,axiom,
    ! [B: code_integer] :
      ( ( minus_8373710615458151222nteger @ zero_z3403309356797280102nteger @ B )
      = ( uminus1351360451143612070nteger @ B ) ) ).

% verit_minus_simplify(3)
thf(fact_2099_verit__minus__simplify_I3_J,axiom,
    ! [B: rat] :
      ( ( minus_minus_rat @ zero_zero_rat @ B )
      = ( uminus_uminus_rat @ B ) ) ).

% verit_minus_simplify(3)
thf(fact_2100_mult__minus1__right,axiom,
    ! [Z2: int] :
      ( ( times_times_int @ Z2 @ ( uminus_uminus_int @ one_one_int ) )
      = ( uminus_uminus_int @ Z2 ) ) ).

% mult_minus1_right
thf(fact_2101_mult__minus1__right,axiom,
    ! [Z2: code_integer] :
      ( ( times_3573771949741848930nteger @ Z2 @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( uminus1351360451143612070nteger @ Z2 ) ) ).

% mult_minus1_right
thf(fact_2102_mult__minus1__right,axiom,
    ! [Z2: rat] :
      ( ( times_times_rat @ Z2 @ ( uminus_uminus_rat @ one_one_rat ) )
      = ( uminus_uminus_rat @ Z2 ) ) ).

% mult_minus1_right
thf(fact_2103_mult__minus1,axiom,
    ! [Z2: int] :
      ( ( times_times_int @ ( uminus_uminus_int @ one_one_int ) @ Z2 )
      = ( uminus_uminus_int @ Z2 ) ) ).

% mult_minus1
thf(fact_2104_mult__minus1,axiom,
    ! [Z2: code_integer] :
      ( ( times_3573771949741848930nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ Z2 )
      = ( uminus1351360451143612070nteger @ Z2 ) ) ).

% mult_minus1
thf(fact_2105_mult__minus1,axiom,
    ! [Z2: rat] :
      ( ( times_times_rat @ ( uminus_uminus_rat @ one_one_rat ) @ Z2 )
      = ( uminus_uminus_rat @ Z2 ) ) ).

% mult_minus1
thf(fact_2106_uminus__add__conv__diff,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ A ) @ B )
      = ( minus_minus_int @ B @ A ) ) ).

% uminus_add_conv_diff
thf(fact_2107_uminus__add__conv__diff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ A ) @ B )
      = ( minus_8373710615458151222nteger @ B @ A ) ) ).

% uminus_add_conv_diff
thf(fact_2108_uminus__add__conv__diff,axiom,
    ! [A: rat,B: rat] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ A ) @ B )
      = ( minus_minus_rat @ B @ A ) ) ).

% uminus_add_conv_diff
thf(fact_2109_diff__minus__eq__add,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ A @ ( uminus_uminus_int @ B ) )
      = ( plus_plus_int @ A @ B ) ) ).

% diff_minus_eq_add
thf(fact_2110_diff__minus__eq__add,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ ( uminus1351360451143612070nteger @ B ) )
      = ( plus_p5714425477246183910nteger @ A @ B ) ) ).

% diff_minus_eq_add
thf(fact_2111_diff__minus__eq__add,axiom,
    ! [A: rat,B: rat] :
      ( ( minus_minus_rat @ A @ ( uminus_uminus_rat @ B ) )
      = ( plus_plus_rat @ A @ B ) ) ).

% diff_minus_eq_add
thf(fact_2112_Suc__pred,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) )
        = N ) ) ).

% Suc_pred
thf(fact_2113_length__0__conv,axiom,
    ! [Xs: list_char] :
      ( ( ( size_size_list_char @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_char ) ) ).

% length_0_conv
thf(fact_2114_length__0__conv,axiom,
    ! [Xs: list_nat] :
      ( ( ( size_size_list_nat @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_nat ) ) ).

% length_0_conv
thf(fact_2115_length__0__conv,axiom,
    ! [Xs: list_int] :
      ( ( ( size_size_list_int @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_int ) ) ).

% length_0_conv
thf(fact_2116_length__0__conv,axiom,
    ! [Xs: list_o] :
      ( ( ( size_size_list_o @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_o ) ) ).

% length_0_conv
thf(fact_2117_one__le__mult__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( times_times_nat @ M @ N ) )
      = ( ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ M )
        & ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ N ) ) ) ).

% one_le_mult_iff
thf(fact_2118_mult__le__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% mult_le_cancel2
thf(fact_2119_diff__Suc__diff__eq1,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ I @ ( suc @ ( minus_minus_nat @ J @ K ) ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ K ) @ ( suc @ J ) ) ) ) ).

% diff_Suc_diff_eq1
thf(fact_2120_diff__Suc__diff__eq2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( suc @ ( minus_minus_nat @ J @ K ) ) @ I )
        = ( minus_minus_nat @ ( suc @ J ) @ ( plus_plus_nat @ K @ I ) ) ) ) ).

% diff_Suc_diff_eq2
thf(fact_2121_Suc__diff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_eq_nat @ one_one_nat @ M )
       => ( ( suc @ ( minus_minus_nat @ N @ M ) )
          = ( minus_minus_nat @ N @ ( minus_minus_nat @ M @ one_one_nat ) ) ) ) ) ).

% Suc_diff
thf(fact_2122_zle__diff1__eq,axiom,
    ! [W2: int,Z2: int] :
      ( ( ord_less_eq_int @ W2 @ ( minus_minus_int @ Z2 @ one_one_int ) )
      = ( ord_less_int @ W2 @ Z2 ) ) ).

% zle_diff1_eq
thf(fact_2123_floor__diff__of__int,axiom,
    ! [X2: rat,Z2: int] :
      ( ( archim3151403230148437115or_rat @ ( minus_minus_rat @ X2 @ ( ring_1_of_int_rat @ Z2 ) ) )
      = ( minus_minus_int @ ( archim3151403230148437115or_rat @ X2 ) @ Z2 ) ) ).

% floor_diff_of_int
thf(fact_2124_ceiling__diff__of__int,axiom,
    ! [X2: rat,Z2: int] :
      ( ( archim2889992004027027881ng_rat @ ( minus_minus_rat @ X2 @ ( ring_1_of_int_rat @ Z2 ) ) )
      = ( minus_minus_int @ ( archim2889992004027027881ng_rat @ X2 ) @ Z2 ) ) ).

% ceiling_diff_of_int
thf(fact_2125_diff__numeral__special_I12_J,axiom,
    ( ( minus_minus_int @ ( uminus_uminus_int @ one_one_int ) @ ( uminus_uminus_int @ one_one_int ) )
    = zero_zero_int ) ).

% diff_numeral_special(12)
thf(fact_2126_diff__numeral__special_I12_J,axiom,
    ( ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
    = zero_z3403309356797280102nteger ) ).

% diff_numeral_special(12)
thf(fact_2127_diff__numeral__special_I12_J,axiom,
    ( ( minus_minus_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( uminus_uminus_rat @ one_one_rat ) )
    = zero_zero_rat ) ).

% diff_numeral_special(12)
thf(fact_2128_length__greater__0__conv,axiom,
    ! [Xs: list_char] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_char @ Xs ) )
      = ( Xs != nil_char ) ) ).

% length_greater_0_conv
thf(fact_2129_length__greater__0__conv,axiom,
    ! [Xs: list_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_nat @ Xs ) )
      = ( Xs != nil_nat ) ) ).

% length_greater_0_conv
thf(fact_2130_length__greater__0__conv,axiom,
    ! [Xs: list_int] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_int @ Xs ) )
      = ( Xs != nil_int ) ) ).

% length_greater_0_conv
thf(fact_2131_length__greater__0__conv,axiom,
    ! [Xs: list_o] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_o @ Xs ) )
      = ( Xs != nil_o ) ) ).

% length_greater_0_conv
thf(fact_2132_Suc__diff__1,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ one_one_nat ) )
        = N ) ) ).

% Suc_diff_1
thf(fact_2133_power__int__minus__one__mult__self,axiom,
    ! [M: int] :
      ( ( times_times_rat @ ( power_int_rat @ ( uminus_uminus_rat @ one_one_rat ) @ M ) @ ( power_int_rat @ ( uminus_uminus_rat @ one_one_rat ) @ M ) )
      = one_one_rat ) ).

% power_int_minus_one_mult_self
thf(fact_2134_power__int__minus__one__mult__self_H,axiom,
    ! [M: int,B: rat] :
      ( ( times_times_rat @ ( power_int_rat @ ( uminus_uminus_rat @ one_one_rat ) @ M ) @ ( times_times_rat @ ( power_int_rat @ ( uminus_uminus_rat @ one_one_rat ) @ M ) @ B ) )
      = B ) ).

% power_int_minus_one_mult_self'
thf(fact_2135_floor__diff__one,axiom,
    ! [X2: rat] :
      ( ( archim3151403230148437115or_rat @ ( minus_minus_rat @ X2 @ one_one_rat ) )
      = ( minus_minus_int @ ( archim3151403230148437115or_rat @ X2 ) @ one_one_int ) ) ).

% floor_diff_one
thf(fact_2136_ceiling__diff__one,axiom,
    ! [X2: rat] :
      ( ( archim2889992004027027881ng_rat @ ( minus_minus_rat @ X2 @ one_one_rat ) )
      = ( minus_minus_int @ ( archim2889992004027027881ng_rat @ X2 ) @ one_one_int ) ) ).

% ceiling_diff_one
thf(fact_2137_int__ops_I7_J,axiom,
    ! [A: nat,B: nat] :
      ( ( semiri1314217659103216013at_int @ ( times_times_nat @ A @ B ) )
      = ( times_times_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) ).

% int_ops(7)
thf(fact_2138_ordering__top_Oextremum__uniqueI,axiom,
    ! [Less_eq: nat > nat > $o,Less: nat > nat > $o,Top: nat,A: nat] :
      ( ( ordering_top_nat @ Less_eq @ Less @ Top )
     => ( ( Less_eq @ Top @ A )
       => ( A = Top ) ) ) ).

% ordering_top.extremum_uniqueI
thf(fact_2139_ordering__top_Onot__eq__extremum,axiom,
    ! [Less_eq: nat > nat > $o,Less: nat > nat > $o,Top: nat,A: nat] :
      ( ( ordering_top_nat @ Less_eq @ Less @ Top )
     => ( ( A != Top )
        = ( Less @ A @ Top ) ) ) ).

% ordering_top.not_eq_extremum
thf(fact_2140_ordering__top_Oextremum__unique,axiom,
    ! [Less_eq: nat > nat > $o,Less: nat > nat > $o,Top: nat,A: nat] :
      ( ( ordering_top_nat @ Less_eq @ Less @ Top )
     => ( ( Less_eq @ Top @ A )
        = ( A = Top ) ) ) ).

% ordering_top.extremum_unique
thf(fact_2141_ordering__top_Oextremum__strict,axiom,
    ! [Less_eq: nat > nat > $o,Less: nat > nat > $o,Top: nat,A: nat] :
      ( ( ordering_top_nat @ Less_eq @ Less @ Top )
     => ~ ( Less @ Top @ A ) ) ).

% ordering_top.extremum_strict
thf(fact_2142_ordering__top_Oextremum,axiom,
    ! [Less_eq: nat > nat > $o,Less: nat > nat > $o,Top: nat,A: nat] :
      ( ( ordering_top_nat @ Less_eq @ Less @ Top )
     => ( Less_eq @ A @ Top ) ) ).

% ordering_top.extremum
thf(fact_2143_cancel__ab__semigroup__add__class_Odiff__right__commute,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( minus_8373710615458151222nteger @ A @ C ) @ B )
      = ( minus_8373710615458151222nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ C ) ) ).

% cancel_ab_semigroup_add_class.diff_right_commute
thf(fact_2144_cancel__ab__semigroup__add__class_Odiff__right__commute,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( minus_minus_rat @ ( minus_minus_rat @ A @ C ) @ B )
      = ( minus_minus_rat @ ( minus_minus_rat @ A @ B ) @ C ) ) ).

% cancel_ab_semigroup_add_class.diff_right_commute
thf(fact_2145_cancel__ab__semigroup__add__class_Odiff__right__commute,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ C ) @ B )
      = ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C ) ) ).

% cancel_ab_semigroup_add_class.diff_right_commute
thf(fact_2146_cancel__ab__semigroup__add__class_Odiff__right__commute,axiom,
    ! [A: int,C: int,B: int] :
      ( ( minus_minus_int @ ( minus_minus_int @ A @ C ) @ B )
      = ( minus_minus_int @ ( minus_minus_int @ A @ B ) @ C ) ) ).

% cancel_ab_semigroup_add_class.diff_right_commute
thf(fact_2147_ab__semigroup__mult__class_Omult_Oleft__commute,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ B @ ( times_3573771949741848930nteger @ A @ C ) )
      = ( times_3573771949741848930nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) ) ) ).

% ab_semigroup_mult_class.mult.left_commute
thf(fact_2148_ab__semigroup__mult__class_Omult_Oleft__commute,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( times_times_rat @ B @ ( times_times_rat @ A @ C ) )
      = ( times_times_rat @ A @ ( times_times_rat @ B @ C ) ) ) ).

% ab_semigroup_mult_class.mult.left_commute
thf(fact_2149_ab__semigroup__mult__class_Omult_Oleft__commute,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( times_times_nat @ B @ ( times_times_nat @ A @ C ) )
      = ( times_times_nat @ A @ ( times_times_nat @ B @ C ) ) ) ).

% ab_semigroup_mult_class.mult.left_commute
thf(fact_2150_ab__semigroup__mult__class_Omult_Oleft__commute,axiom,
    ! [B: int,A: int,C: int] :
      ( ( times_times_int @ B @ ( times_times_int @ A @ C ) )
      = ( times_times_int @ A @ ( times_times_int @ B @ C ) ) ) ).

% ab_semigroup_mult_class.mult.left_commute
thf(fact_2151_ab__semigroup__mult__class_Omult_Ocommute,axiom,
    ( times_3573771949741848930nteger
    = ( ^ [A2: code_integer,B2: code_integer] : ( times_3573771949741848930nteger @ B2 @ A2 ) ) ) ).

% ab_semigroup_mult_class.mult.commute
thf(fact_2152_ab__semigroup__mult__class_Omult_Ocommute,axiom,
    ( times_times_rat
    = ( ^ [A2: rat,B2: rat] : ( times_times_rat @ B2 @ A2 ) ) ) ).

% ab_semigroup_mult_class.mult.commute
thf(fact_2153_ab__semigroup__mult__class_Omult_Ocommute,axiom,
    ( times_times_nat
    = ( ^ [A2: nat,B2: nat] : ( times_times_nat @ B2 @ A2 ) ) ) ).

% ab_semigroup_mult_class.mult.commute
thf(fact_2154_ab__semigroup__mult__class_Omult_Ocommute,axiom,
    ( times_times_int
    = ( ^ [A2: int,B2: int] : ( times_times_int @ B2 @ A2 ) ) ) ).

% ab_semigroup_mult_class.mult.commute
thf(fact_2155_mult_Oassoc,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ ( times_3573771949741848930nteger @ A @ B ) @ C )
      = ( times_3573771949741848930nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) ) ) ).

% mult.assoc
thf(fact_2156_mult_Oassoc,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ ( times_times_rat @ A @ B ) @ C )
      = ( times_times_rat @ A @ ( times_times_rat @ B @ C ) ) ) ).

% mult.assoc
thf(fact_2157_mult_Oassoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ ( times_times_nat @ A @ B ) @ C )
      = ( times_times_nat @ A @ ( times_times_nat @ B @ C ) ) ) ).

% mult.assoc
thf(fact_2158_mult_Oassoc,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( times_times_int @ A @ B ) @ C )
      = ( times_times_int @ A @ ( times_times_int @ B @ C ) ) ) ).

% mult.assoc
thf(fact_2159_diff__eq__diff__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ( minus_8373710615458151222nteger @ A @ B )
        = ( minus_8373710615458151222nteger @ C @ D ) )
     => ( ( A = B )
        = ( C = D ) ) ) ).

% diff_eq_diff_eq
thf(fact_2160_diff__eq__diff__eq,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ( minus_minus_rat @ A @ B )
        = ( minus_minus_rat @ C @ D ) )
     => ( ( A = B )
        = ( C = D ) ) ) ).

% diff_eq_diff_eq
thf(fact_2161_diff__eq__diff__eq,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ( minus_minus_int @ A @ B )
        = ( minus_minus_int @ C @ D ) )
     => ( ( A = B )
        = ( C = D ) ) ) ).

% diff_eq_diff_eq
thf(fact_2162_inf__period_I1_J,axiom,
    ! [P: code_integer > $o,D3: code_integer,Q: code_integer > $o] :
      ( ! [X3: code_integer,K3: code_integer] :
          ( ( P @ X3 )
          = ( P @ ( minus_8373710615458151222nteger @ X3 @ ( times_3573771949741848930nteger @ K3 @ D3 ) ) ) )
     => ( ! [X3: code_integer,K3: code_integer] :
            ( ( Q @ X3 )
            = ( Q @ ( minus_8373710615458151222nteger @ X3 @ ( times_3573771949741848930nteger @ K3 @ D3 ) ) ) )
       => ! [X4: code_integer,K4: code_integer] :
            ( ( ( P @ X4 )
              & ( Q @ X4 ) )
            = ( ( P @ ( minus_8373710615458151222nteger @ X4 @ ( times_3573771949741848930nteger @ K4 @ D3 ) ) )
              & ( Q @ ( minus_8373710615458151222nteger @ X4 @ ( times_3573771949741848930nteger @ K4 @ D3 ) ) ) ) ) ) ) ).

% inf_period(1)
thf(fact_2163_inf__period_I1_J,axiom,
    ! [P: rat > $o,D3: rat,Q: rat > $o] :
      ( ! [X3: rat,K3: rat] :
          ( ( P @ X3 )
          = ( P @ ( minus_minus_rat @ X3 @ ( times_times_rat @ K3 @ D3 ) ) ) )
     => ( ! [X3: rat,K3: rat] :
            ( ( Q @ X3 )
            = ( Q @ ( minus_minus_rat @ X3 @ ( times_times_rat @ K3 @ D3 ) ) ) )
       => ! [X4: rat,K4: rat] :
            ( ( ( P @ X4 )
              & ( Q @ X4 ) )
            = ( ( P @ ( minus_minus_rat @ X4 @ ( times_times_rat @ K4 @ D3 ) ) )
              & ( Q @ ( minus_minus_rat @ X4 @ ( times_times_rat @ K4 @ D3 ) ) ) ) ) ) ) ).

% inf_period(1)
thf(fact_2164_inf__period_I1_J,axiom,
    ! [P: int > $o,D3: int,Q: int > $o] :
      ( ! [X3: int,K3: int] :
          ( ( P @ X3 )
          = ( P @ ( minus_minus_int @ X3 @ ( times_times_int @ K3 @ D3 ) ) ) )
     => ( ! [X3: int,K3: int] :
            ( ( Q @ X3 )
            = ( Q @ ( minus_minus_int @ X3 @ ( times_times_int @ K3 @ D3 ) ) ) )
       => ! [X4: int,K4: int] :
            ( ( ( P @ X4 )
              & ( Q @ X4 ) )
            = ( ( P @ ( minus_minus_int @ X4 @ ( times_times_int @ K4 @ D3 ) ) )
              & ( Q @ ( minus_minus_int @ X4 @ ( times_times_int @ K4 @ D3 ) ) ) ) ) ) ) ).

% inf_period(1)
thf(fact_2165_inf__period_I2_J,axiom,
    ! [P: code_integer > $o,D3: code_integer,Q: code_integer > $o] :
      ( ! [X3: code_integer,K3: code_integer] :
          ( ( P @ X3 )
          = ( P @ ( minus_8373710615458151222nteger @ X3 @ ( times_3573771949741848930nteger @ K3 @ D3 ) ) ) )
     => ( ! [X3: code_integer,K3: code_integer] :
            ( ( Q @ X3 )
            = ( Q @ ( minus_8373710615458151222nteger @ X3 @ ( times_3573771949741848930nteger @ K3 @ D3 ) ) ) )
       => ! [X4: code_integer,K4: code_integer] :
            ( ( ( P @ X4 )
              | ( Q @ X4 ) )
            = ( ( P @ ( minus_8373710615458151222nteger @ X4 @ ( times_3573771949741848930nteger @ K4 @ D3 ) ) )
              | ( Q @ ( minus_8373710615458151222nteger @ X4 @ ( times_3573771949741848930nteger @ K4 @ D3 ) ) ) ) ) ) ) ).

% inf_period(2)
thf(fact_2166_inf__period_I2_J,axiom,
    ! [P: rat > $o,D3: rat,Q: rat > $o] :
      ( ! [X3: rat,K3: rat] :
          ( ( P @ X3 )
          = ( P @ ( minus_minus_rat @ X3 @ ( times_times_rat @ K3 @ D3 ) ) ) )
     => ( ! [X3: rat,K3: rat] :
            ( ( Q @ X3 )
            = ( Q @ ( minus_minus_rat @ X3 @ ( times_times_rat @ K3 @ D3 ) ) ) )
       => ! [X4: rat,K4: rat] :
            ( ( ( P @ X4 )
              | ( Q @ X4 ) )
            = ( ( P @ ( minus_minus_rat @ X4 @ ( times_times_rat @ K4 @ D3 ) ) )
              | ( Q @ ( minus_minus_rat @ X4 @ ( times_times_rat @ K4 @ D3 ) ) ) ) ) ) ) ).

% inf_period(2)
thf(fact_2167_inf__period_I2_J,axiom,
    ! [P: int > $o,D3: int,Q: int > $o] :
      ( ! [X3: int,K3: int] :
          ( ( P @ X3 )
          = ( P @ ( minus_minus_int @ X3 @ ( times_times_int @ K3 @ D3 ) ) ) )
     => ( ! [X3: int,K3: int] :
            ( ( Q @ X3 )
            = ( Q @ ( minus_minus_int @ X3 @ ( times_times_int @ K3 @ D3 ) ) ) )
       => ! [X4: int,K4: int] :
            ( ( ( P @ X4 )
              | ( Q @ X4 ) )
            = ( ( P @ ( minus_minus_int @ X4 @ ( times_times_int @ K4 @ D3 ) ) )
              | ( Q @ ( minus_minus_int @ X4 @ ( times_times_int @ K4 @ D3 ) ) ) ) ) ) ) ).

% inf_period(2)
thf(fact_2168_square__diff__square__factored,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ X2 @ X2 ) @ ( times_3573771949741848930nteger @ Y @ Y ) )
      = ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ X2 @ Y ) @ ( minus_8373710615458151222nteger @ X2 @ Y ) ) ) ).

% square_diff_square_factored
thf(fact_2169_square__diff__square__factored,axiom,
    ! [X2: rat,Y: rat] :
      ( ( minus_minus_rat @ ( times_times_rat @ X2 @ X2 ) @ ( times_times_rat @ Y @ Y ) )
      = ( times_times_rat @ ( plus_plus_rat @ X2 @ Y ) @ ( minus_minus_rat @ X2 @ Y ) ) ) ).

% square_diff_square_factored
thf(fact_2170_square__diff__square__factored,axiom,
    ! [X2: int,Y: int] :
      ( ( minus_minus_int @ ( times_times_int @ X2 @ X2 ) @ ( times_times_int @ Y @ Y ) )
      = ( times_times_int @ ( plus_plus_int @ X2 @ Y ) @ ( minus_minus_int @ X2 @ Y ) ) ) ).

% square_diff_square_factored
thf(fact_2171_eq__add__iff2,axiom,
    ! [A: code_integer,E: code_integer,C: code_integer,B: code_integer,D: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ E ) @ C )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ E ) @ D ) )
      = ( C
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ B @ A ) @ E ) @ D ) ) ) ).

% eq_add_iff2
thf(fact_2172_eq__add__iff2,axiom,
    ! [A: rat,E: rat,C: rat,B: rat,D: rat] :
      ( ( ( plus_plus_rat @ ( times_times_rat @ A @ E ) @ C )
        = ( plus_plus_rat @ ( times_times_rat @ B @ E ) @ D ) )
      = ( C
        = ( plus_plus_rat @ ( times_times_rat @ ( minus_minus_rat @ B @ A ) @ E ) @ D ) ) ) ).

% eq_add_iff2
thf(fact_2173_eq__add__iff2,axiom,
    ! [A: int,E: int,C: int,B: int,D: int] :
      ( ( ( plus_plus_int @ ( times_times_int @ A @ E ) @ C )
        = ( plus_plus_int @ ( times_times_int @ B @ E ) @ D ) )
      = ( C
        = ( plus_plus_int @ ( times_times_int @ ( minus_minus_int @ B @ A ) @ E ) @ D ) ) ) ).

% eq_add_iff2
thf(fact_2174_eq__add__iff1,axiom,
    ! [A: code_integer,E: code_integer,C: code_integer,B: code_integer,D: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ E ) @ C )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ E ) @ D ) )
      = ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ E ) @ C )
        = D ) ) ).

% eq_add_iff1
thf(fact_2175_eq__add__iff1,axiom,
    ! [A: rat,E: rat,C: rat,B: rat,D: rat] :
      ( ( ( plus_plus_rat @ ( times_times_rat @ A @ E ) @ C )
        = ( plus_plus_rat @ ( times_times_rat @ B @ E ) @ D ) )
      = ( ( plus_plus_rat @ ( times_times_rat @ ( minus_minus_rat @ A @ B ) @ E ) @ C )
        = D ) ) ).

% eq_add_iff1
thf(fact_2176_eq__add__iff1,axiom,
    ! [A: int,E: int,C: int,B: int,D: int] :
      ( ( ( plus_plus_int @ ( times_times_int @ A @ E ) @ C )
        = ( plus_plus_int @ ( times_times_int @ B @ E ) @ D ) )
      = ( ( plus_plus_int @ ( times_times_int @ ( minus_minus_int @ A @ B ) @ E ) @ C )
        = D ) ) ).

% eq_add_iff1
thf(fact_2177_le__add__iff1,axiom,
    ! [A: code_integer,E: code_integer,C: code_integer,B: code_integer,D: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ E ) @ C ) @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ E ) @ D ) )
      = ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ E ) @ C ) @ D ) ) ).

% le_add_iff1
thf(fact_2178_le__add__iff1,axiom,
    ! [A: rat,E: rat,C: rat,B: rat,D: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ ( times_times_rat @ A @ E ) @ C ) @ ( plus_plus_rat @ ( times_times_rat @ B @ E ) @ D ) )
      = ( ord_less_eq_rat @ ( plus_plus_rat @ ( times_times_rat @ ( minus_minus_rat @ A @ B ) @ E ) @ C ) @ D ) ) ).

% le_add_iff1
thf(fact_2179_le__add__iff1,axiom,
    ! [A: int,E: int,C: int,B: int,D: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ ( times_times_int @ A @ E ) @ C ) @ ( plus_plus_int @ ( times_times_int @ B @ E ) @ D ) )
      = ( ord_less_eq_int @ ( plus_plus_int @ ( times_times_int @ ( minus_minus_int @ A @ B ) @ E ) @ C ) @ D ) ) ).

% le_add_iff1
thf(fact_2180_le__add__iff2,axiom,
    ! [A: code_integer,E: code_integer,C: code_integer,B: code_integer,D: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ E ) @ C ) @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ E ) @ D ) )
      = ( ord_le3102999989581377725nteger @ C @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ B @ A ) @ E ) @ D ) ) ) ).

% le_add_iff2
thf(fact_2181_le__add__iff2,axiom,
    ! [A: rat,E: rat,C: rat,B: rat,D: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ ( times_times_rat @ A @ E ) @ C ) @ ( plus_plus_rat @ ( times_times_rat @ B @ E ) @ D ) )
      = ( ord_less_eq_rat @ C @ ( plus_plus_rat @ ( times_times_rat @ ( minus_minus_rat @ B @ A ) @ E ) @ D ) ) ) ).

% le_add_iff2
thf(fact_2182_le__add__iff2,axiom,
    ! [A: int,E: int,C: int,B: int,D: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ ( times_times_int @ A @ E ) @ C ) @ ( plus_plus_int @ ( times_times_int @ B @ E ) @ D ) )
      = ( ord_less_eq_int @ C @ ( plus_plus_int @ ( times_times_int @ ( minus_minus_int @ B @ A ) @ E ) @ D ) ) ) ).

% le_add_iff2
thf(fact_2183_less__add__iff2,axiom,
    ! [A: code_integer,E: code_integer,C: code_integer,B: code_integer,D: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ E ) @ C ) @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ E ) @ D ) )
      = ( ord_le6747313008572928689nteger @ C @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ B @ A ) @ E ) @ D ) ) ) ).

% less_add_iff2
thf(fact_2184_less__add__iff2,axiom,
    ! [A: rat,E: rat,C: rat,B: rat,D: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ ( times_times_rat @ A @ E ) @ C ) @ ( plus_plus_rat @ ( times_times_rat @ B @ E ) @ D ) )
      = ( ord_less_rat @ C @ ( plus_plus_rat @ ( times_times_rat @ ( minus_minus_rat @ B @ A ) @ E ) @ D ) ) ) ).

% less_add_iff2
thf(fact_2185_less__add__iff2,axiom,
    ! [A: int,E: int,C: int,B: int,D: int] :
      ( ( ord_less_int @ ( plus_plus_int @ ( times_times_int @ A @ E ) @ C ) @ ( plus_plus_int @ ( times_times_int @ B @ E ) @ D ) )
      = ( ord_less_int @ C @ ( plus_plus_int @ ( times_times_int @ ( minus_minus_int @ B @ A ) @ E ) @ D ) ) ) ).

% less_add_iff2
thf(fact_2186_less__add__iff1,axiom,
    ! [A: code_integer,E: code_integer,C: code_integer,B: code_integer,D: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ E ) @ C ) @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ E ) @ D ) )
      = ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ E ) @ C ) @ D ) ) ).

% less_add_iff1
thf(fact_2187_less__add__iff1,axiom,
    ! [A: rat,E: rat,C: rat,B: rat,D: rat] :
      ( ( ord_less_rat @ ( plus_plus_rat @ ( times_times_rat @ A @ E ) @ C ) @ ( plus_plus_rat @ ( times_times_rat @ B @ E ) @ D ) )
      = ( ord_less_rat @ ( plus_plus_rat @ ( times_times_rat @ ( minus_minus_rat @ A @ B ) @ E ) @ C ) @ D ) ) ).

% less_add_iff1
thf(fact_2188_less__add__iff1,axiom,
    ! [A: int,E: int,C: int,B: int,D: int] :
      ( ( ord_less_int @ ( plus_plus_int @ ( times_times_int @ A @ E ) @ C ) @ ( plus_plus_int @ ( times_times_int @ B @ E ) @ D ) )
      = ( ord_less_int @ ( plus_plus_int @ ( times_times_int @ ( minus_minus_int @ A @ B ) @ E ) @ C ) @ D ) ) ).

% less_add_iff1
thf(fact_2189_square__diff__one__factored,axiom,
    ! [X2: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ X2 @ X2 ) @ one_one_Code_integer )
      = ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ X2 @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ X2 @ one_one_Code_integer ) ) ) ).

% square_diff_one_factored
thf(fact_2190_square__diff__one__factored,axiom,
    ! [X2: rat] :
      ( ( minus_minus_rat @ ( times_times_rat @ X2 @ X2 ) @ one_one_rat )
      = ( times_times_rat @ ( plus_plus_rat @ X2 @ one_one_rat ) @ ( minus_minus_rat @ X2 @ one_one_rat ) ) ) ).

% square_diff_one_factored
thf(fact_2191_square__diff__one__factored,axiom,
    ! [X2: int] :
      ( ( minus_minus_int @ ( times_times_int @ X2 @ X2 ) @ one_one_int )
      = ( times_times_int @ ( plus_plus_int @ X2 @ one_one_int ) @ ( minus_minus_int @ X2 @ one_one_int ) ) ) ).

% square_diff_one_factored
thf(fact_2192_of__nat__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( semiri1314217659103216013at_int @ ( minus_minus_nat @ M @ N ) )
        = ( minus_minus_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) ) ) ).

% of_nat_diff
thf(fact_2193_of__nat__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( semiri1316708129612266289at_nat @ ( minus_minus_nat @ M @ N ) )
        = ( minus_minus_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) ) ) ) ).

% of_nat_diff
thf(fact_2194_of__nat__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( semiri4939895301339042750nteger @ ( minus_minus_nat @ M @ N ) )
        = ( minus_8373710615458151222nteger @ ( semiri4939895301339042750nteger @ M ) @ ( semiri4939895301339042750nteger @ N ) ) ) ) ).

% of_nat_diff
thf(fact_2195_of__nat__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( semiri681578069525770553at_rat @ ( minus_minus_nat @ M @ N ) )
        = ( minus_minus_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ N ) ) ) ) ).

% of_nat_diff
thf(fact_2196_of__nat__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( semiri3763490453095760265atural @ ( minus_minus_nat @ M @ N ) )
        = ( minus_7197305767214868737atural @ ( semiri3763490453095760265atural @ M ) @ ( semiri3763490453095760265atural @ N ) ) ) ) ).

% of_nat_diff
thf(fact_2197_minusinfinity,axiom,
    ! [D: int,P1: int > $o,P: int > $o] :
      ( ( ord_less_int @ zero_zero_int @ D )
     => ( ! [X3: int,K3: int] :
            ( ( P1 @ X3 )
            = ( P1 @ ( minus_minus_int @ X3 @ ( times_times_int @ K3 @ D ) ) ) )
       => ( ? [Z5: int] :
            ! [X3: int] :
              ( ( ord_less_int @ X3 @ Z5 )
             => ( ( P @ X3 )
                = ( P1 @ X3 ) ) )
         => ( ? [X_1: int] : ( P1 @ X_1 )
           => ? [X_12: int] : ( P @ X_12 ) ) ) ) ) ).

% minusinfinity
thf(fact_2198_plusinfinity,axiom,
    ! [D: int,P2: int > $o,P: int > $o] :
      ( ( ord_less_int @ zero_zero_int @ D )
     => ( ! [X3: int,K3: int] :
            ( ( P2 @ X3 )
            = ( P2 @ ( minus_minus_int @ X3 @ ( times_times_int @ K3 @ D ) ) ) )
       => ( ? [Z5: int] :
            ! [X3: int] :
              ( ( ord_less_int @ Z5 @ X3 )
             => ( ( P @ X3 )
                = ( P2 @ X3 ) ) )
         => ( ? [X_1: int] : ( P2 @ X_1 )
           => ? [X_12: int] : ( P @ X_12 ) ) ) ) ) ).

% plusinfinity
thf(fact_2199_int__minus,axiom,
    ! [N: nat,M: nat] :
      ( ( semiri1314217659103216013at_int @ ( minus_minus_nat @ N @ M ) )
      = ( semiri1314217659103216013at_int @ ( nat2 @ ( minus_minus_int @ ( semiri1314217659103216013at_int @ N ) @ ( semiri1314217659103216013at_int @ M ) ) ) ) ) ).

% int_minus
thf(fact_2200_diff__eq__diff__less__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ( minus_8373710615458151222nteger @ A @ B )
        = ( minus_8373710615458151222nteger @ C @ D ) )
     => ( ( ord_le3102999989581377725nteger @ A @ B )
        = ( ord_le3102999989581377725nteger @ C @ D ) ) ) ).

% diff_eq_diff_less_eq
thf(fact_2201_diff__eq__diff__less__eq,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ( minus_minus_rat @ A @ B )
        = ( minus_minus_rat @ C @ D ) )
     => ( ( ord_less_eq_rat @ A @ B )
        = ( ord_less_eq_rat @ C @ D ) ) ) ).

% diff_eq_diff_less_eq
thf(fact_2202_diff__eq__diff__less__eq,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ( minus_minus_int @ A @ B )
        = ( minus_minus_int @ C @ D ) )
     => ( ( ord_less_eq_int @ A @ B )
        = ( ord_less_eq_int @ C @ D ) ) ) ).

% diff_eq_diff_less_eq
thf(fact_2203_diff__right__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ A @ C ) @ ( minus_8373710615458151222nteger @ B @ C ) ) ) ).

% diff_right_mono
thf(fact_2204_diff__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ord_less_eq_rat @ ( minus_minus_rat @ A @ C ) @ ( minus_minus_rat @ B @ C ) ) ) ).

% diff_right_mono
thf(fact_2205_diff__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ord_less_eq_int @ ( minus_minus_int @ A @ C ) @ ( minus_minus_int @ B @ C ) ) ) ).

% diff_right_mono
thf(fact_2206_diff__left__mono,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ B @ A )
     => ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ C @ A ) @ ( minus_8373710615458151222nteger @ C @ B ) ) ) ).

% diff_left_mono
thf(fact_2207_diff__left__mono,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_eq_rat @ B @ A )
     => ( ord_less_eq_rat @ ( minus_minus_rat @ C @ A ) @ ( minus_minus_rat @ C @ B ) ) ) ).

% diff_left_mono
thf(fact_2208_diff__left__mono,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ord_less_eq_int @ ( minus_minus_int @ C @ A ) @ ( minus_minus_int @ C @ B ) ) ) ).

% diff_left_mono
thf(fact_2209_diff__mono,axiom,
    ! [A: code_integer,B: code_integer,D: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ D @ C )
       => ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ A @ C ) @ ( minus_8373710615458151222nteger @ B @ D ) ) ) ) ).

% diff_mono
thf(fact_2210_diff__mono,axiom,
    ! [A: rat,B: rat,D: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ D @ C )
       => ( ord_less_eq_rat @ ( minus_minus_rat @ A @ C ) @ ( minus_minus_rat @ B @ D ) ) ) ) ).

% diff_mono
thf(fact_2211_diff__mono,axiom,
    ! [A: int,B: int,D: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ D @ C )
       => ( ord_less_eq_int @ ( minus_minus_int @ A @ C ) @ ( minus_minus_int @ B @ D ) ) ) ) ).

% diff_mono
thf(fact_2212_eq__iff__diff__eq__0,axiom,
    ( ( ^ [Y3: code_integer,Z: code_integer] : Y3 = Z )
    = ( ^ [A2: code_integer,B2: code_integer] :
          ( ( minus_8373710615458151222nteger @ A2 @ B2 )
          = zero_z3403309356797280102nteger ) ) ) ).

% eq_iff_diff_eq_0
thf(fact_2213_eq__iff__diff__eq__0,axiom,
    ( ( ^ [Y3: rat,Z: rat] : Y3 = Z )
    = ( ^ [A2: rat,B2: rat] :
          ( ( minus_minus_rat @ A2 @ B2 )
          = zero_zero_rat ) ) ) ).

% eq_iff_diff_eq_0
thf(fact_2214_eq__iff__diff__eq__0,axiom,
    ( ( ^ [Y3: int,Z: int] : Y3 = Z )
    = ( ^ [A2: int,B2: int] :
          ( ( minus_minus_int @ A2 @ B2 )
          = zero_zero_int ) ) ) ).

% eq_iff_diff_eq_0
thf(fact_2215_diff__strict__right__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ord_le6747313008572928689nteger @ ( minus_8373710615458151222nteger @ A @ C ) @ ( minus_8373710615458151222nteger @ B @ C ) ) ) ).

% diff_strict_right_mono
thf(fact_2216_diff__strict__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ord_less_rat @ ( minus_minus_rat @ A @ C ) @ ( minus_minus_rat @ B @ C ) ) ) ).

% diff_strict_right_mono
thf(fact_2217_diff__strict__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( minus_minus_int @ A @ C ) @ ( minus_minus_int @ B @ C ) ) ) ).

% diff_strict_right_mono
thf(fact_2218_diff__strict__left__mono,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ B @ A )
     => ( ord_le6747313008572928689nteger @ ( minus_8373710615458151222nteger @ C @ A ) @ ( minus_8373710615458151222nteger @ C @ B ) ) ) ).

% diff_strict_left_mono
thf(fact_2219_diff__strict__left__mono,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_rat @ B @ A )
     => ( ord_less_rat @ ( minus_minus_rat @ C @ A ) @ ( minus_minus_rat @ C @ B ) ) ) ).

% diff_strict_left_mono
thf(fact_2220_diff__strict__left__mono,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_int @ B @ A )
     => ( ord_less_int @ ( minus_minus_int @ C @ A ) @ ( minus_minus_int @ C @ B ) ) ) ).

% diff_strict_left_mono
thf(fact_2221_diff__eq__diff__less,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ( minus_8373710615458151222nteger @ A @ B )
        = ( minus_8373710615458151222nteger @ C @ D ) )
     => ( ( ord_le6747313008572928689nteger @ A @ B )
        = ( ord_le6747313008572928689nteger @ C @ D ) ) ) ).

% diff_eq_diff_less
thf(fact_2222_diff__eq__diff__less,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ( minus_minus_rat @ A @ B )
        = ( minus_minus_rat @ C @ D ) )
     => ( ( ord_less_rat @ A @ B )
        = ( ord_less_rat @ C @ D ) ) ) ).

% diff_eq_diff_less
thf(fact_2223_diff__eq__diff__less,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ( minus_minus_int @ A @ B )
        = ( minus_minus_int @ C @ D ) )
     => ( ( ord_less_int @ A @ B )
        = ( ord_less_int @ C @ D ) ) ) ).

% diff_eq_diff_less
thf(fact_2224_diff__strict__mono,axiom,
    ! [A: code_integer,B: code_integer,D: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ D @ C )
       => ( ord_le6747313008572928689nteger @ ( minus_8373710615458151222nteger @ A @ C ) @ ( minus_8373710615458151222nteger @ B @ D ) ) ) ) ).

% diff_strict_mono
thf(fact_2225_diff__strict__mono,axiom,
    ! [A: rat,B: rat,D: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ D @ C )
       => ( ord_less_rat @ ( minus_minus_rat @ A @ C ) @ ( minus_minus_rat @ B @ D ) ) ) ) ).

% diff_strict_mono
thf(fact_2226_diff__strict__mono,axiom,
    ! [A: int,B: int,D: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ D @ C )
       => ( ord_less_int @ ( minus_minus_int @ A @ C ) @ ( minus_minus_int @ B @ D ) ) ) ) ).

% diff_strict_mono
thf(fact_2227_diff__diff__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ C )
      = ( minus_8373710615458151222nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_2228_diff__diff__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( minus_minus_rat @ ( minus_minus_rat @ A @ B ) @ C )
      = ( minus_minus_rat @ A @ ( plus_plus_rat @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_2229_diff__diff__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C )
      = ( minus_minus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_2230_diff__diff__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( minus_minus_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( minus_minus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_2231_add__implies__diff,axiom,
    ! [C: code_integer,B: code_integer,A: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ C @ B )
        = A )
     => ( C
        = ( minus_8373710615458151222nteger @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_2232_add__implies__diff,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ( plus_plus_rat @ C @ B )
        = A )
     => ( C
        = ( minus_minus_rat @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_2233_add__implies__diff,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( ( plus_plus_nat @ C @ B )
        = A )
     => ( C
        = ( minus_minus_nat @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_2234_add__implies__diff,axiom,
    ! [C: int,B: int,A: int] :
      ( ( ( plus_plus_int @ C @ B )
        = A )
     => ( C
        = ( minus_minus_int @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_2235_diff__add__eq__diff__diff__swap,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) )
      = ( minus_8373710615458151222nteger @ ( minus_8373710615458151222nteger @ A @ C ) @ B ) ) ).

% diff_add_eq_diff_diff_swap
thf(fact_2236_diff__add__eq__diff__diff__swap,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( minus_minus_rat @ A @ ( plus_plus_rat @ B @ C ) )
      = ( minus_minus_rat @ ( minus_minus_rat @ A @ C ) @ B ) ) ).

% diff_add_eq_diff_diff_swap
thf(fact_2237_diff__add__eq__diff__diff__swap,axiom,
    ! [A: int,B: int,C: int] :
      ( ( minus_minus_int @ A @ ( plus_plus_int @ B @ C ) )
      = ( minus_minus_int @ ( minus_minus_int @ A @ C ) @ B ) ) ).

% diff_add_eq_diff_diff_swap
thf(fact_2238_diff__add__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ C )
      = ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ B ) ) ).

% diff_add_eq
thf(fact_2239_diff__add__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( plus_plus_rat @ ( minus_minus_rat @ A @ B ) @ C )
      = ( minus_minus_rat @ ( plus_plus_rat @ A @ C ) @ B ) ) ).

% diff_add_eq
thf(fact_2240_diff__add__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( minus_minus_int @ ( plus_plus_int @ A @ C ) @ B ) ) ).

% diff_add_eq
thf(fact_2241_diff__diff__eq2,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( minus_8373710615458151222nteger @ A @ ( minus_8373710615458151222nteger @ B @ C ) )
      = ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ C ) @ B ) ) ).

% diff_diff_eq2
thf(fact_2242_diff__diff__eq2,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( minus_minus_rat @ A @ ( minus_minus_rat @ B @ C ) )
      = ( minus_minus_rat @ ( plus_plus_rat @ A @ C ) @ B ) ) ).

% diff_diff_eq2
thf(fact_2243_diff__diff__eq2,axiom,
    ! [A: int,B: int,C: int] :
      ( ( minus_minus_int @ A @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( plus_plus_int @ A @ C ) @ B ) ) ).

% diff_diff_eq2
thf(fact_2244_add__diff__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( plus_p5714425477246183910nteger @ A @ ( minus_8373710615458151222nteger @ B @ C ) )
      = ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C ) ) ).

% add_diff_eq
thf(fact_2245_add__diff__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( plus_plus_rat @ A @ ( minus_minus_rat @ B @ C ) )
      = ( minus_minus_rat @ ( plus_plus_rat @ A @ B ) @ C ) ) ).

% add_diff_eq
thf(fact_2246_add__diff__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ A @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% add_diff_eq
thf(fact_2247_eq__diff__eq,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( A
        = ( minus_8373710615458151222nteger @ C @ B ) )
      = ( ( plus_p5714425477246183910nteger @ A @ B )
        = C ) ) ).

% eq_diff_eq
thf(fact_2248_eq__diff__eq,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( A
        = ( minus_minus_rat @ C @ B ) )
      = ( ( plus_plus_rat @ A @ B )
        = C ) ) ).

% eq_diff_eq
thf(fact_2249_eq__diff__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( A
        = ( minus_minus_int @ C @ B ) )
      = ( ( plus_plus_int @ A @ B )
        = C ) ) ).

% eq_diff_eq
thf(fact_2250_diff__eq__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ( minus_8373710615458151222nteger @ A @ B )
        = C )
      = ( A
        = ( plus_p5714425477246183910nteger @ C @ B ) ) ) ).

% diff_eq_eq
thf(fact_2251_diff__eq__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ( minus_minus_rat @ A @ B )
        = C )
      = ( A
        = ( plus_plus_rat @ C @ B ) ) ) ).

% diff_eq_eq
thf(fact_2252_diff__eq__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( minus_minus_int @ A @ B )
        = C )
      = ( A
        = ( plus_plus_int @ C @ B ) ) ) ).

% diff_eq_eq
thf(fact_2253_group__cancel_Osub1,axiom,
    ! [A4: code_integer,K: code_integer,A: code_integer,B: code_integer] :
      ( ( A4
        = ( plus_p5714425477246183910nteger @ K @ A ) )
     => ( ( minus_8373710615458151222nteger @ A4 @ B )
        = ( plus_p5714425477246183910nteger @ K @ ( minus_8373710615458151222nteger @ A @ B ) ) ) ) ).

% group_cancel.sub1
thf(fact_2254_group__cancel_Osub1,axiom,
    ! [A4: rat,K: rat,A: rat,B: rat] :
      ( ( A4
        = ( plus_plus_rat @ K @ A ) )
     => ( ( minus_minus_rat @ A4 @ B )
        = ( plus_plus_rat @ K @ ( minus_minus_rat @ A @ B ) ) ) ) ).

% group_cancel.sub1
thf(fact_2255_group__cancel_Osub1,axiom,
    ! [A4: int,K: int,A: int,B: int] :
      ( ( A4
        = ( plus_plus_int @ K @ A ) )
     => ( ( minus_minus_int @ A4 @ B )
        = ( plus_plus_int @ K @ ( minus_minus_int @ A @ B ) ) ) ) ).

% group_cancel.sub1
thf(fact_2256_minus__diff__commute,axiom,
    ! [B: int,A: int] :
      ( ( minus_minus_int @ ( uminus_uminus_int @ B ) @ A )
      = ( minus_minus_int @ ( uminus_uminus_int @ A ) @ B ) ) ).

% minus_diff_commute
thf(fact_2257_minus__diff__commute,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ B ) @ A )
      = ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ A ) @ B ) ) ).

% minus_diff_commute
thf(fact_2258_minus__diff__commute,axiom,
    ! [B: rat,A: rat] :
      ( ( minus_minus_rat @ ( uminus_uminus_rat @ B ) @ A )
      = ( minus_minus_rat @ ( uminus_uminus_rat @ A ) @ B ) ) ).

% minus_diff_commute
thf(fact_2259_mult__not__zero,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ( times_2397367101498566445atural @ A @ B )
       != zero_z2226904508553997617atural )
     => ( ( A != zero_z2226904508553997617atural )
        & ( B != zero_z2226904508553997617atural ) ) ) ).

% mult_not_zero
thf(fact_2260_mult__not__zero,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( times_3573771949741848930nteger @ A @ B )
       != zero_z3403309356797280102nteger )
     => ( ( A != zero_z3403309356797280102nteger )
        & ( B != zero_z3403309356797280102nteger ) ) ) ).

% mult_not_zero
thf(fact_2261_mult__not__zero,axiom,
    ! [A: rat,B: rat] :
      ( ( ( times_times_rat @ A @ B )
       != zero_zero_rat )
     => ( ( A != zero_zero_rat )
        & ( B != zero_zero_rat ) ) ) ).

% mult_not_zero
thf(fact_2262_mult__not__zero,axiom,
    ! [A: nat,B: nat] :
      ( ( ( times_times_nat @ A @ B )
       != zero_zero_nat )
     => ( ( A != zero_zero_nat )
        & ( B != zero_zero_nat ) ) ) ).

% mult_not_zero
thf(fact_2263_mult__not__zero,axiom,
    ! [A: int,B: int] :
      ( ( ( times_times_int @ A @ B )
       != zero_zero_int )
     => ( ( A != zero_zero_int )
        & ( B != zero_zero_int ) ) ) ).

% mult_not_zero
thf(fact_2264_divisors__zero,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ( times_2397367101498566445atural @ A @ B )
        = zero_z2226904508553997617atural )
     => ( ( A = zero_z2226904508553997617atural )
        | ( B = zero_z2226904508553997617atural ) ) ) ).

% divisors_zero
thf(fact_2265_divisors__zero,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( times_3573771949741848930nteger @ A @ B )
        = zero_z3403309356797280102nteger )
     => ( ( A = zero_z3403309356797280102nteger )
        | ( B = zero_z3403309356797280102nteger ) ) ) ).

% divisors_zero
thf(fact_2266_divisors__zero,axiom,
    ! [A: rat,B: rat] :
      ( ( ( times_times_rat @ A @ B )
        = zero_zero_rat )
     => ( ( A = zero_zero_rat )
        | ( B = zero_zero_rat ) ) ) ).

% divisors_zero
thf(fact_2267_divisors__zero,axiom,
    ! [A: nat,B: nat] :
      ( ( ( times_times_nat @ A @ B )
        = zero_zero_nat )
     => ( ( A = zero_zero_nat )
        | ( B = zero_zero_nat ) ) ) ).

% divisors_zero
thf(fact_2268_divisors__zero,axiom,
    ! [A: int,B: int] :
      ( ( ( times_times_int @ A @ B )
        = zero_zero_int )
     => ( ( A = zero_zero_int )
        | ( B = zero_zero_int ) ) ) ).

% divisors_zero
thf(fact_2269_no__zero__divisors,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( B != zero_z2226904508553997617atural )
       => ( ( times_2397367101498566445atural @ A @ B )
         != zero_z2226904508553997617atural ) ) ) ).

% no_zero_divisors
thf(fact_2270_no__zero__divisors,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( B != zero_z3403309356797280102nteger )
       => ( ( times_3573771949741848930nteger @ A @ B )
         != zero_z3403309356797280102nteger ) ) ) ).

% no_zero_divisors
thf(fact_2271_no__zero__divisors,axiom,
    ! [A: rat,B: rat] :
      ( ( A != zero_zero_rat )
     => ( ( B != zero_zero_rat )
       => ( ( times_times_rat @ A @ B )
         != zero_zero_rat ) ) ) ).

% no_zero_divisors
thf(fact_2272_no__zero__divisors,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ( ( B != zero_zero_nat )
       => ( ( times_times_nat @ A @ B )
         != zero_zero_nat ) ) ) ).

% no_zero_divisors
thf(fact_2273_no__zero__divisors,axiom,
    ! [A: int,B: int] :
      ( ( A != zero_zero_int )
     => ( ( B != zero_zero_int )
       => ( ( times_times_int @ A @ B )
         != zero_zero_int ) ) ) ).

% no_zero_divisors
thf(fact_2274_mult__left__cancel,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( C != zero_z2226904508553997617atural )
     => ( ( ( times_2397367101498566445atural @ C @ A )
          = ( times_2397367101498566445atural @ C @ B ) )
        = ( A = B ) ) ) ).

% mult_left_cancel
thf(fact_2275_mult__left__cancel,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( C != zero_z3403309356797280102nteger )
     => ( ( ( times_3573771949741848930nteger @ C @ A )
          = ( times_3573771949741848930nteger @ C @ B ) )
        = ( A = B ) ) ) ).

% mult_left_cancel
thf(fact_2276_mult__left__cancel,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( ( times_times_rat @ C @ A )
          = ( times_times_rat @ C @ B ) )
        = ( A = B ) ) ) ).

% mult_left_cancel
thf(fact_2277_mult__left__cancel,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( C != zero_zero_nat )
     => ( ( ( times_times_nat @ C @ A )
          = ( times_times_nat @ C @ B ) )
        = ( A = B ) ) ) ).

% mult_left_cancel
thf(fact_2278_mult__left__cancel,axiom,
    ! [C: int,A: int,B: int] :
      ( ( C != zero_zero_int )
     => ( ( ( times_times_int @ C @ A )
          = ( times_times_int @ C @ B ) )
        = ( A = B ) ) ) ).

% mult_left_cancel
thf(fact_2279_mult__right__cancel,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( C != zero_z2226904508553997617atural )
     => ( ( ( times_2397367101498566445atural @ A @ C )
          = ( times_2397367101498566445atural @ B @ C ) )
        = ( A = B ) ) ) ).

% mult_right_cancel
thf(fact_2280_mult__right__cancel,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( C != zero_z3403309356797280102nteger )
     => ( ( ( times_3573771949741848930nteger @ A @ C )
          = ( times_3573771949741848930nteger @ B @ C ) )
        = ( A = B ) ) ) ).

% mult_right_cancel
thf(fact_2281_mult__right__cancel,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( ( times_times_rat @ A @ C )
          = ( times_times_rat @ B @ C ) )
        = ( A = B ) ) ) ).

% mult_right_cancel
thf(fact_2282_mult__right__cancel,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( C != zero_zero_nat )
     => ( ( ( times_times_nat @ A @ C )
          = ( times_times_nat @ B @ C ) )
        = ( A = B ) ) ) ).

% mult_right_cancel
thf(fact_2283_mult__right__cancel,axiom,
    ! [C: int,A: int,B: int] :
      ( ( C != zero_zero_int )
     => ( ( ( times_times_int @ A @ C )
          = ( times_times_int @ B @ C ) )
        = ( A = B ) ) ) ).

% mult_right_cancel
thf(fact_2284_crossproduct__eq,axiom,
    ! [W2: code_integer,Y: code_integer,X2: code_integer,Z2: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ W2 @ Y ) @ ( times_3573771949741848930nteger @ X2 @ Z2 ) )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ W2 @ Z2 ) @ ( times_3573771949741848930nteger @ X2 @ Y ) ) )
      = ( ( W2 = X2 )
        | ( Y = Z2 ) ) ) ).

% crossproduct_eq
thf(fact_2285_crossproduct__eq,axiom,
    ! [W2: rat,Y: rat,X2: rat,Z2: rat] :
      ( ( ( plus_plus_rat @ ( times_times_rat @ W2 @ Y ) @ ( times_times_rat @ X2 @ Z2 ) )
        = ( plus_plus_rat @ ( times_times_rat @ W2 @ Z2 ) @ ( times_times_rat @ X2 @ Y ) ) )
      = ( ( W2 = X2 )
        | ( Y = Z2 ) ) ) ).

% crossproduct_eq
thf(fact_2286_crossproduct__eq,axiom,
    ! [W2: nat,Y: nat,X2: nat,Z2: nat] :
      ( ( ( plus_plus_nat @ ( times_times_nat @ W2 @ Y ) @ ( times_times_nat @ X2 @ Z2 ) )
        = ( plus_plus_nat @ ( times_times_nat @ W2 @ Z2 ) @ ( times_times_nat @ X2 @ Y ) ) )
      = ( ( W2 = X2 )
        | ( Y = Z2 ) ) ) ).

% crossproduct_eq
thf(fact_2287_crossproduct__eq,axiom,
    ! [W2: int,Y: int,X2: int,Z2: int] :
      ( ( ( plus_plus_int @ ( times_times_int @ W2 @ Y ) @ ( times_times_int @ X2 @ Z2 ) )
        = ( plus_plus_int @ ( times_times_int @ W2 @ Z2 ) @ ( times_times_int @ X2 @ Y ) ) )
      = ( ( W2 = X2 )
        | ( Y = Z2 ) ) ) ).

% crossproduct_eq
thf(fact_2288_crossproduct__noteq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ( A != B )
        & ( C != D ) )
      = ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) )
       != ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ D ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% crossproduct_noteq
thf(fact_2289_crossproduct__noteq,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ( A != B )
        & ( C != D ) )
      = ( ( plus_plus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ D ) )
       != ( plus_plus_rat @ ( times_times_rat @ A @ D ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% crossproduct_noteq
thf(fact_2290_crossproduct__noteq,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ( A != B )
        & ( C != D ) )
      = ( ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) )
       != ( plus_plus_nat @ ( times_times_nat @ A @ D ) @ ( times_times_nat @ B @ C ) ) ) ) ).

% crossproduct_noteq
thf(fact_2291_crossproduct__noteq,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ( A != B )
        & ( C != D ) )
      = ( ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) )
       != ( plus_plus_int @ ( times_times_int @ A @ D ) @ ( times_times_int @ B @ C ) ) ) ) ).

% crossproduct_noteq
thf(fact_2292_ring__class_Oring__distribs_I2_J,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ).

% ring_class.ring_distribs(2)
thf(fact_2293_ring__class_Oring__distribs_I2_J,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ C )
      = ( plus_plus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ).

% ring_class.ring_distribs(2)
thf(fact_2294_ring__class_Oring__distribs_I2_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ).

% ring_class.ring_distribs(2)
thf(fact_2295_ring__class_Oring__distribs_I1_J,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ B ) @ ( times_3573771949741848930nteger @ A @ C ) ) ) ).

% ring_class.ring_distribs(1)
thf(fact_2296_ring__class_Oring__distribs_I1_J,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ A @ ( plus_plus_rat @ B @ C ) )
      = ( plus_plus_rat @ ( times_times_rat @ A @ B ) @ ( times_times_rat @ A @ C ) ) ) ).

% ring_class.ring_distribs(1)
thf(fact_2297_ring__class_Oring__distribs_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ A @ ( plus_plus_int @ B @ C ) )
      = ( plus_plus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ).

% ring_class.ring_distribs(1)
thf(fact_2298_comm__semiring__class_Odistrib,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ).

% comm_semiring_class.distrib
thf(fact_2299_comm__semiring__class_Odistrib,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ C )
      = ( plus_plus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ).

% comm_semiring_class.distrib
thf(fact_2300_comm__semiring__class_Odistrib,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ).

% comm_semiring_class.distrib
thf(fact_2301_comm__semiring__class_Odistrib,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ).

% comm_semiring_class.distrib
thf(fact_2302_distrib__left,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ B ) @ ( times_3573771949741848930nteger @ A @ C ) ) ) ).

% distrib_left
thf(fact_2303_distrib__left,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ A @ ( plus_plus_rat @ B @ C ) )
      = ( plus_plus_rat @ ( times_times_rat @ A @ B ) @ ( times_times_rat @ A @ C ) ) ) ).

% distrib_left
thf(fact_2304_distrib__left,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ A @ ( plus_plus_nat @ B @ C ) )
      = ( plus_plus_nat @ ( times_times_nat @ A @ B ) @ ( times_times_nat @ A @ C ) ) ) ).

% distrib_left
thf(fact_2305_distrib__left,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ A @ ( plus_plus_int @ B @ C ) )
      = ( plus_plus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ).

% distrib_left
thf(fact_2306_distrib__right,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ).

% distrib_right
thf(fact_2307_distrib__right,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ C )
      = ( plus_plus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ).

% distrib_right
thf(fact_2308_distrib__right,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ).

% distrib_right
thf(fact_2309_distrib__right,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ).

% distrib_right
thf(fact_2310_combine__common__factor,axiom,
    ! [A: code_integer,E: code_integer,B: code_integer,C: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ E ) @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ E ) @ C ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ E ) @ C ) ) ).

% combine_common_factor
thf(fact_2311_combine__common__factor,axiom,
    ! [A: rat,E: rat,B: rat,C: rat] :
      ( ( plus_plus_rat @ ( times_times_rat @ A @ E ) @ ( plus_plus_rat @ ( times_times_rat @ B @ E ) @ C ) )
      = ( plus_plus_rat @ ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ E ) @ C ) ) ).

% combine_common_factor
thf(fact_2312_combine__common__factor,axiom,
    ! [A: nat,E: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( times_times_nat @ A @ E ) @ ( plus_plus_nat @ ( times_times_nat @ B @ E ) @ C ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ E ) @ C ) ) ).

% combine_common_factor
thf(fact_2313_combine__common__factor,axiom,
    ! [A: int,E: int,B: int,C: int] :
      ( ( plus_plus_int @ ( times_times_int @ A @ E ) @ ( plus_plus_int @ ( times_times_int @ B @ E ) @ C ) )
      = ( plus_plus_int @ ( times_times_int @ ( plus_plus_int @ A @ B ) @ E ) @ C ) ) ).

% combine_common_factor
thf(fact_2314_mult_Ocomm__neutral,axiom,
    ! [A: code_natural] :
      ( ( times_2397367101498566445atural @ A @ one_one_Code_natural )
      = A ) ).

% mult.comm_neutral
thf(fact_2315_mult_Ocomm__neutral,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ A @ one_one_Code_integer )
      = A ) ).

% mult.comm_neutral
thf(fact_2316_mult_Ocomm__neutral,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ A @ one_one_rat )
      = A ) ).

% mult.comm_neutral
thf(fact_2317_mult_Ocomm__neutral,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ A @ one_one_nat )
      = A ) ).

% mult.comm_neutral
thf(fact_2318_mult_Ocomm__neutral,axiom,
    ! [A: int] :
      ( ( times_times_int @ A @ one_one_int )
      = A ) ).

% mult.comm_neutral
thf(fact_2319_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: code_natural] :
      ( ( times_2397367101498566445atural @ one_one_Code_natural @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_2320_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: code_integer] :
      ( ( times_3573771949741848930nteger @ one_one_Code_integer @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_2321_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: rat] :
      ( ( times_times_rat @ one_one_rat @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_2322_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ one_one_nat @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_2323_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: int] :
      ( ( times_times_int @ one_one_int @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_2324_diffs0__imp__equal,axiom,
    ! [M: nat,N: nat] :
      ( ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat )
     => ( ( ( minus_minus_nat @ N @ M )
          = zero_zero_nat )
       => ( M = N ) ) ) ).

% diffs0_imp_equal
thf(fact_2325_minus__nat_Odiff__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ zero_zero_nat )
      = M ) ).

% minus_nat.diff_0
thf(fact_2326_minus__int__code_I1_J,axiom,
    ! [K: int] :
      ( ( minus_minus_int @ K @ zero_zero_int )
      = K ) ).

% minus_int_code(1)
thf(fact_2327_zero__induct__lemma,axiom,
    ! [P: nat > $o,K: nat,I: nat] :
      ( ( P @ K )
     => ( ! [N2: nat] :
            ( ( P @ ( suc @ N2 ) )
           => ( P @ N2 ) )
       => ( P @ ( minus_minus_nat @ K @ I ) ) ) ) ).

% zero_induct_lemma
thf(fact_2328_diff__less__mono2,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( ord_less_nat @ M @ L )
       => ( ord_less_nat @ ( minus_minus_nat @ L @ N ) @ ( minus_minus_nat @ L @ M ) ) ) ) ).

% diff_less_mono2
thf(fact_2329_less__imp__diff__less,axiom,
    ! [J: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ J @ K )
     => ( ord_less_nat @ ( minus_minus_nat @ J @ N ) @ K ) ) ).

% less_imp_diff_less
thf(fact_2330_diff__le__mono2,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ L @ N ) @ ( minus_minus_nat @ L @ M ) ) ) ).

% diff_le_mono2
thf(fact_2331_le__diff__iff_H,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ C )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ C @ A ) @ ( minus_minus_nat @ C @ B ) )
          = ( ord_less_eq_nat @ B @ A ) ) ) ) ).

% le_diff_iff'
thf(fact_2332_diff__le__self,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( minus_minus_nat @ M @ N ) @ M ) ).

% diff_le_self
thf(fact_2333_diff__le__mono,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ M @ L ) @ ( minus_minus_nat @ N @ L ) ) ) ).

% diff_le_mono
thf(fact_2334_Nat_Odiff__diff__eq,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( minus_minus_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( minus_minus_nat @ M @ N ) ) ) ) ).

% Nat.diff_diff_eq
thf(fact_2335_le__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_eq_nat @ M @ N ) ) ) ) ).

% le_diff_iff
thf(fact_2336_eq__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ( minus_minus_nat @ M @ K )
            = ( minus_minus_nat @ N @ K ) )
          = ( M = N ) ) ) ) ).

% eq_diff_iff
thf(fact_2337_diff__add__inverse2,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ N )
      = M ) ).

% diff_add_inverse2
thf(fact_2338_diff__add__inverse,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ N @ M ) @ N )
      = M ) ).

% diff_add_inverse
thf(fact_2339_diff__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% diff_cancel2
thf(fact_2340_Nat_Odiff__cancel,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% Nat.diff_cancel
thf(fact_2341_mult__0,axiom,
    ! [N: nat] :
      ( ( times_times_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% mult_0
thf(fact_2342_Suc__mult__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( times_times_nat @ ( suc @ K ) @ M )
        = ( times_times_nat @ ( suc @ K ) @ N ) )
      = ( M = N ) ) ).

% Suc_mult_cancel1
thf(fact_2343_mult__of__nat__commute,axiom,
    ! [X2: nat,Y: int] :
      ( ( times_times_int @ ( semiri1314217659103216013at_int @ X2 ) @ Y )
      = ( times_times_int @ Y @ ( semiri1314217659103216013at_int @ X2 ) ) ) ).

% mult_of_nat_commute
thf(fact_2344_mult__of__nat__commute,axiom,
    ! [X2: nat,Y: nat] :
      ( ( times_times_nat @ ( semiri1316708129612266289at_nat @ X2 ) @ Y )
      = ( times_times_nat @ Y @ ( semiri1316708129612266289at_nat @ X2 ) ) ) ).

% mult_of_nat_commute
thf(fact_2345_mult__of__nat__commute,axiom,
    ! [X2: nat,Y: code_integer] :
      ( ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ X2 ) @ Y )
      = ( times_3573771949741848930nteger @ Y @ ( semiri4939895301339042750nteger @ X2 ) ) ) ).

% mult_of_nat_commute
thf(fact_2346_mult__of__nat__commute,axiom,
    ! [X2: nat,Y: rat] :
      ( ( times_times_rat @ ( semiri681578069525770553at_rat @ X2 ) @ Y )
      = ( times_times_rat @ Y @ ( semiri681578069525770553at_rat @ X2 ) ) ) ).

% mult_of_nat_commute
thf(fact_2347_mult__of__nat__commute,axiom,
    ! [X2: nat,Y: code_natural] :
      ( ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ X2 ) @ Y )
      = ( times_2397367101498566445atural @ Y @ ( semiri3763490453095760265atural @ X2 ) ) ) ).

% mult_of_nat_commute
thf(fact_2348_times__int__code_I2_J,axiom,
    ! [L: int] :
      ( ( times_times_int @ zero_zero_int @ L )
      = zero_zero_int ) ).

% times_int_code(2)
thf(fact_2349_times__int__code_I1_J,axiom,
    ! [K: int] :
      ( ( times_times_int @ K @ zero_zero_int )
      = zero_zero_int ) ).

% times_int_code(1)
thf(fact_2350_mult__le__mono2,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ ( times_times_nat @ K @ I ) @ ( times_times_nat @ K @ J ) ) ) ).

% mult_le_mono2
thf(fact_2351_mult__le__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ ( times_times_nat @ I @ K ) @ ( times_times_nat @ J @ K ) ) ) ).

% mult_le_mono1
thf(fact_2352_mult__le__mono,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ K @ L )
       => ( ord_less_eq_nat @ ( times_times_nat @ I @ K ) @ ( times_times_nat @ J @ L ) ) ) ) ).

% mult_le_mono
thf(fact_2353_le__square,axiom,
    ! [M: nat] : ( ord_less_eq_nat @ M @ ( times_times_nat @ M @ M ) ) ).

% le_square
thf(fact_2354_le__cube,axiom,
    ! [M: nat] : ( ord_less_eq_nat @ M @ ( times_times_nat @ M @ ( times_times_nat @ M @ M ) ) ) ).

% le_cube
thf(fact_2355_int__diff__cases,axiom,
    ! [Z2: int] :
      ~ ! [M4: nat,N2: nat] :
          ( Z2
         != ( minus_minus_int @ ( semiri1314217659103216013at_int @ M4 ) @ ( semiri1314217659103216013at_int @ N2 ) ) ) ).

% int_diff_cases
thf(fact_2356_add__mult__distrib2,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( times_times_nat @ K @ ( plus_plus_nat @ M @ N ) )
      = ( plus_plus_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) ) ) ).

% add_mult_distrib2
thf(fact_2357_add__mult__distrib,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( times_times_nat @ ( plus_plus_nat @ M @ N ) @ K )
      = ( plus_plus_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) ) ) ).

% add_mult_distrib
thf(fact_2358_nat__minus__as__int,axiom,
    ( minus_minus_nat
    = ( ^ [A2: nat,B2: nat] : ( nat2 @ ( minus_minus_int @ ( semiri1314217659103216013at_int @ A2 ) @ ( semiri1314217659103216013at_int @ B2 ) ) ) ) ) ).

% nat_minus_as_int
thf(fact_2359_nat__mult__1,axiom,
    ! [N: nat] :
      ( ( times_times_nat @ one_one_nat @ N )
      = N ) ).

% nat_mult_1
thf(fact_2360_nat__mult__1__right,axiom,
    ! [N: nat] :
      ( ( times_times_nat @ N @ one_one_nat )
      = N ) ).

% nat_mult_1_right
thf(fact_2361_mult__of__int__commute,axiom,
    ! [X2: int,Y: code_integer] :
      ( ( times_3573771949741848930nteger @ ( ring_18347121197199848620nteger @ X2 ) @ Y )
      = ( times_3573771949741848930nteger @ Y @ ( ring_18347121197199848620nteger @ X2 ) ) ) ).

% mult_of_int_commute
thf(fact_2362_mult__of__int__commute,axiom,
    ! [X2: int,Y: rat] :
      ( ( times_times_rat @ ( ring_1_of_int_rat @ X2 ) @ Y )
      = ( times_times_rat @ Y @ ( ring_1_of_int_rat @ X2 ) ) ) ).

% mult_of_int_commute
thf(fact_2363_mult__of__int__commute,axiom,
    ! [X2: int,Y: int] :
      ( ( times_times_int @ ( ring_1_of_int_int @ X2 ) @ Y )
      = ( times_times_int @ Y @ ( ring_1_of_int_int @ X2 ) ) ) ).

% mult_of_int_commute
thf(fact_2364_int__distrib_I2_J,axiom,
    ! [W2: int,Z1: int,Z22: int] :
      ( ( times_times_int @ W2 @ ( plus_plus_int @ Z1 @ Z22 ) )
      = ( plus_plus_int @ ( times_times_int @ W2 @ Z1 ) @ ( times_times_int @ W2 @ Z22 ) ) ) ).

% int_distrib(2)
thf(fact_2365_int__distrib_I1_J,axiom,
    ! [Z1: int,Z22: int,W2: int] :
      ( ( times_times_int @ ( plus_plus_int @ Z1 @ Z22 ) @ W2 )
      = ( plus_plus_int @ ( times_times_int @ Z1 @ W2 ) @ ( times_times_int @ Z22 @ W2 ) ) ) ).

% int_distrib(1)
thf(fact_2366_nat__times__as__int,axiom,
    ( times_times_nat
    = ( ^ [A2: nat,B2: nat] : ( nat2 @ ( times_times_int @ ( semiri1314217659103216013at_int @ A2 ) @ ( semiri1314217659103216013at_int @ B2 ) ) ) ) ) ).

% nat_times_as_int
thf(fact_2367_power__int__mult__distrib,axiom,
    ! [X2: rat,Y: rat,M: int] :
      ( ( power_int_rat @ ( times_times_rat @ X2 @ Y ) @ M )
      = ( times_times_rat @ ( power_int_rat @ X2 @ M ) @ ( power_int_rat @ Y @ M ) ) ) ).

% power_int_mult_distrib
thf(fact_2368_power__int__commutes,axiom,
    ! [X2: rat,N: int] :
      ( ( times_times_rat @ ( power_int_rat @ X2 @ N ) @ X2 )
      = ( times_times_rat @ X2 @ ( power_int_rat @ X2 @ N ) ) ) ).

% power_int_commutes
thf(fact_2369_int__ops_I6_J,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ord_less_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) )
       => ( ( semiri1314217659103216013at_int @ ( minus_minus_nat @ A @ B ) )
          = zero_zero_int ) )
      & ( ~ ( ord_less_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) )
       => ( ( semiri1314217659103216013at_int @ ( minus_minus_nat @ A @ B ) )
          = ( minus_minus_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) ) ) ).

% int_ops(6)
thf(fact_2370_mult__eq__if,axiom,
    ( times_times_nat
    = ( ^ [M2: nat,N3: nat] : ( if_nat @ ( M2 = zero_zero_nat ) @ zero_zero_nat @ ( plus_plus_nat @ N3 @ ( times_times_nat @ ( minus_minus_nat @ M2 @ one_one_nat ) @ N3 ) ) ) ) ) ).

% mult_eq_if
thf(fact_2371_decr__mult__lemma,axiom,
    ! [D: int,P: int > $o,K: int] :
      ( ( ord_less_int @ zero_zero_int @ D )
     => ( ! [X3: int] :
            ( ( P @ X3 )
           => ( P @ ( minus_minus_int @ X3 @ D ) ) )
       => ( ( ord_less_eq_int @ zero_zero_int @ K )
         => ! [X4: int] :
              ( ( P @ X4 )
             => ( P @ ( minus_minus_int @ X4 @ ( times_times_int @ K @ D ) ) ) ) ) ) ) ).

% decr_mult_lemma
thf(fact_2372_nat__diff__distrib_H,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X2 )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y )
       => ( ( nat2 @ ( minus_minus_int @ X2 @ Y ) )
          = ( minus_minus_nat @ ( nat2 @ X2 ) @ ( nat2 @ Y ) ) ) ) ) ).

% nat_diff_distrib'
thf(fact_2373_nat__diff__distrib,axiom,
    ! [Z6: int,Z2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z6 )
     => ( ( ord_less_eq_int @ Z6 @ Z2 )
       => ( ( nat2 @ ( minus_minus_int @ Z2 @ Z6 ) )
          = ( minus_minus_nat @ ( nat2 @ Z2 ) @ ( nat2 @ Z6 ) ) ) ) ) ).

% nat_diff_distrib
thf(fact_2374_lambda__zero,axiom,
    ( ( ^ [H3: code_natural] : zero_z2226904508553997617atural )
    = ( times_2397367101498566445atural @ zero_z2226904508553997617atural ) ) ).

% lambda_zero
thf(fact_2375_lambda__zero,axiom,
    ( ( ^ [H3: code_integer] : zero_z3403309356797280102nteger )
    = ( times_3573771949741848930nteger @ zero_z3403309356797280102nteger ) ) ).

% lambda_zero
thf(fact_2376_lambda__zero,axiom,
    ( ( ^ [H3: rat] : zero_zero_rat )
    = ( times_times_rat @ zero_zero_rat ) ) ).

% lambda_zero
thf(fact_2377_lambda__zero,axiom,
    ( ( ^ [H3: nat] : zero_zero_nat )
    = ( times_times_nat @ zero_zero_nat ) ) ).

% lambda_zero
thf(fact_2378_lambda__zero,axiom,
    ( ( ^ [H3: int] : zero_zero_int )
    = ( times_times_int @ zero_zero_int ) ) ).

% lambda_zero
thf(fact_2379_lambda__one,axiom,
    ( ( ^ [X: code_natural] : X )
    = ( times_2397367101498566445atural @ one_one_Code_natural ) ) ).

% lambda_one
thf(fact_2380_lambda__one,axiom,
    ( ( ^ [X: code_integer] : X )
    = ( times_3573771949741848930nteger @ one_one_Code_integer ) ) ).

% lambda_one
thf(fact_2381_lambda__one,axiom,
    ( ( ^ [X: rat] : X )
    = ( times_times_rat @ one_one_rat ) ) ).

% lambda_one
thf(fact_2382_lambda__one,axiom,
    ( ( ^ [X: nat] : X )
    = ( times_times_nat @ one_one_nat ) ) ).

% lambda_one
thf(fact_2383_lambda__one,axiom,
    ( ( ^ [X: int] : X )
    = ( times_times_int @ one_one_int ) ) ).

% lambda_one
thf(fact_2384_nat__mult__distrib,axiom,
    ! [Z2: int,Z6: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
     => ( ( nat2 @ ( times_times_int @ Z2 @ Z6 ) )
        = ( times_times_nat @ ( nat2 @ Z2 ) @ ( nat2 @ Z6 ) ) ) ) ).

% nat_mult_distrib
thf(fact_2385_zdiff__int__split,axiom,
    ! [P: int > $o,X2: nat,Y: nat] :
      ( ( P @ ( semiri1314217659103216013at_int @ ( minus_minus_nat @ X2 @ Y ) ) )
      = ( ( ( ord_less_eq_nat @ Y @ X2 )
         => ( P @ ( minus_minus_int @ ( semiri1314217659103216013at_int @ X2 ) @ ( semiri1314217659103216013at_int @ Y ) ) ) )
        & ( ( ord_less_nat @ X2 @ Y )
         => ( P @ zero_zero_int ) ) ) ) ).

% zdiff_int_split
thf(fact_2386_le__iff__diff__le__0,axiom,
    ( ord_le3102999989581377725nteger
    = ( ^ [A2: code_integer,B2: code_integer] : ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ A2 @ B2 ) @ zero_z3403309356797280102nteger ) ) ) ).

% le_iff_diff_le_0
thf(fact_2387_le__iff__diff__le__0,axiom,
    ( ord_less_eq_rat
    = ( ^ [A2: rat,B2: rat] : ( ord_less_eq_rat @ ( minus_minus_rat @ A2 @ B2 ) @ zero_zero_rat ) ) ) ).

% le_iff_diff_le_0
thf(fact_2388_le__iff__diff__le__0,axiom,
    ( ord_less_eq_int
    = ( ^ [A2: int,B2: int] : ( ord_less_eq_int @ ( minus_minus_int @ A2 @ B2 ) @ zero_zero_int ) ) ) ).

% le_iff_diff_le_0
thf(fact_2389_power__int__minus__mult,axiom,
    ! [X2: rat,N: int] :
      ( ( ( X2 != zero_zero_rat )
        | ( N != zero_zero_int ) )
     => ( ( times_times_rat @ ( power_int_rat @ X2 @ ( minus_minus_int @ N @ one_one_int ) ) @ X2 )
        = ( power_int_rat @ X2 @ N ) ) ) ).

% power_int_minus_mult
thf(fact_2390_less__iff__diff__less__0,axiom,
    ( ord_le6747313008572928689nteger
    = ( ^ [A2: code_integer,B2: code_integer] : ( ord_le6747313008572928689nteger @ ( minus_8373710615458151222nteger @ A2 @ B2 ) @ zero_z3403309356797280102nteger ) ) ) ).

% less_iff_diff_less_0
thf(fact_2391_less__iff__diff__less__0,axiom,
    ( ord_less_rat
    = ( ^ [A2: rat,B2: rat] : ( ord_less_rat @ ( minus_minus_rat @ A2 @ B2 ) @ zero_zero_rat ) ) ) ).

% less_iff_diff_less_0
thf(fact_2392_less__iff__diff__less__0,axiom,
    ( ord_less_int
    = ( ^ [A2: int,B2: int] : ( ord_less_int @ ( minus_minus_int @ A2 @ B2 ) @ zero_zero_int ) ) ) ).

% less_iff_diff_less_0
thf(fact_2393_le__mult__floor,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_eq_int @ ( times_times_int @ ( archim3151403230148437115or_rat @ A ) @ ( archim3151403230148437115or_rat @ B ) ) @ ( archim3151403230148437115or_rat @ ( times_times_rat @ A @ B ) ) ) ) ) ).

% le_mult_floor
thf(fact_2394_diff__le__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ C )
      = ( ord_le3102999989581377725nteger @ A @ ( plus_p5714425477246183910nteger @ C @ B ) ) ) ).

% diff_le_eq
thf(fact_2395_diff__le__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ ( minus_minus_rat @ A @ B ) @ C )
      = ( ord_less_eq_rat @ A @ ( plus_plus_rat @ C @ B ) ) ) ).

% diff_le_eq
thf(fact_2396_diff__le__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( ord_less_eq_int @ A @ ( plus_plus_int @ C @ B ) ) ) ).

% diff_le_eq
thf(fact_2397_le__diff__eq,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ ( minus_8373710615458151222nteger @ C @ B ) )
      = ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C ) ) ).

% le_diff_eq
thf(fact_2398_le__diff__eq,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ ( minus_minus_rat @ C @ B ) )
      = ( ord_less_eq_rat @ ( plus_plus_rat @ A @ B ) @ C ) ) ).

% le_diff_eq
thf(fact_2399_le__diff__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ A @ ( minus_minus_int @ C @ B ) )
      = ( ord_less_eq_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% le_diff_eq
thf(fact_2400_ordered__cancel__comm__monoid__diff__class_Odiff__add,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ B @ A ) @ A )
        = B ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add
thf(fact_2401_le__add__diff,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ord_less_eq_nat @ C @ ( minus_minus_nat @ ( plus_plus_nat @ B @ C ) @ A ) ) ) ).

% le_add_diff
thf(fact_2402_ordered__cancel__comm__monoid__diff__class_Ole__diff__conv2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ ( minus_minus_nat @ B @ A ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ B ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.le_diff_conv2
thf(fact_2403_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ C @ ( minus_minus_nat @ B @ A ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C @ B ) @ A ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc
thf(fact_2404_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ C @ B ) @ A )
        = ( plus_plus_nat @ C @ ( minus_minus_nat @ B @ A ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc
thf(fact_2405_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ B @ A ) @ C )
        = ( minus_minus_nat @ ( plus_plus_nat @ B @ C ) @ A ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc2
thf(fact_2406_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ B @ C ) @ A )
        = ( plus_plus_nat @ ( minus_minus_nat @ B @ A ) @ C ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc2
thf(fact_2407_ordered__cancel__comm__monoid__diff__class_Odiff__diff__right,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( minus_minus_nat @ C @ ( minus_minus_nat @ B @ A ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C @ A ) @ B ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_diff_right
thf(fact_2408_ordered__cancel__comm__monoid__diff__class_Oadd__diff__inverse,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ A @ ( minus_minus_nat @ B @ A ) )
        = B ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_inverse
thf(fact_2409_ordered__cancel__comm__monoid__diff__class_Ole__imp__diff__is__add,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( ( ( minus_minus_nat @ B @ A )
            = C )
          = ( B
            = ( plus_plus_nat @ C @ A ) ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.le_imp_diff_is_add
thf(fact_2410_add__le__imp__le__diff,axiom,
    ! [I: code_integer,K: code_integer,N: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ I @ K ) @ N )
     => ( ord_le3102999989581377725nteger @ I @ ( minus_8373710615458151222nteger @ N @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_2411_add__le__imp__le__diff,axiom,
    ! [I: rat,K: rat,N: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ I @ K ) @ N )
     => ( ord_less_eq_rat @ I @ ( minus_minus_rat @ N @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_2412_add__le__imp__le__diff,axiom,
    ! [I: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N )
     => ( ord_less_eq_nat @ I @ ( minus_minus_nat @ N @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_2413_add__le__imp__le__diff,axiom,
    ! [I: int,K: int,N: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ I @ K ) @ N )
     => ( ord_less_eq_int @ I @ ( minus_minus_int @ N @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_2414_add__le__add__imp__diff__le,axiom,
    ! [I: code_integer,K: code_integer,N: code_integer,J: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ I @ K ) @ N )
     => ( ( ord_le3102999989581377725nteger @ N @ ( plus_p5714425477246183910nteger @ J @ K ) )
       => ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ I @ K ) @ N )
         => ( ( ord_le3102999989581377725nteger @ N @ ( plus_p5714425477246183910nteger @ J @ K ) )
           => ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ N @ K ) @ J ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_2415_add__le__add__imp__diff__le,axiom,
    ! [I: rat,K: rat,N: rat,J: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ I @ K ) @ N )
     => ( ( ord_less_eq_rat @ N @ ( plus_plus_rat @ J @ K ) )
       => ( ( ord_less_eq_rat @ ( plus_plus_rat @ I @ K ) @ N )
         => ( ( ord_less_eq_rat @ N @ ( plus_plus_rat @ J @ K ) )
           => ( ord_less_eq_rat @ ( minus_minus_rat @ N @ K ) @ J ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_2416_add__le__add__imp__diff__le,axiom,
    ! [I: nat,K: nat,N: nat,J: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N )
     => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J @ K ) )
       => ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N )
         => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J @ K ) )
           => ( ord_less_eq_nat @ ( minus_minus_nat @ N @ K ) @ J ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_2417_add__le__add__imp__diff__le,axiom,
    ! [I: int,K: int,N: int,J: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ I @ K ) @ N )
     => ( ( ord_less_eq_int @ N @ ( plus_plus_int @ J @ K ) )
       => ( ( ord_less_eq_int @ ( plus_plus_int @ I @ K ) @ N )
         => ( ( ord_less_eq_int @ N @ ( plus_plus_int @ J @ K ) )
           => ( ord_less_eq_int @ ( minus_minus_int @ N @ K ) @ J ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_2418_mult__ceiling__le,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_eq_int @ ( archim2889992004027027881ng_rat @ ( times_times_rat @ A @ B ) ) @ ( times_times_int @ ( archim2889992004027027881ng_rat @ A ) @ ( archim2889992004027027881ng_rat @ B ) ) ) ) ) ).

% mult_ceiling_le
thf(fact_2419_less__diff__eq,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ ( minus_8373710615458151222nteger @ C @ B ) )
      = ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C ) ) ).

% less_diff_eq
thf(fact_2420_less__diff__eq,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_rat @ A @ ( minus_minus_rat @ C @ B ) )
      = ( ord_less_rat @ ( plus_plus_rat @ A @ B ) @ C ) ) ).

% less_diff_eq
thf(fact_2421_less__diff__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ A @ ( minus_minus_int @ C @ B ) )
      = ( ord_less_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% less_diff_eq
thf(fact_2422_diff__less__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ C )
      = ( ord_le6747313008572928689nteger @ A @ ( plus_p5714425477246183910nteger @ C @ B ) ) ) ).

% diff_less_eq
thf(fact_2423_diff__less__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ ( minus_minus_rat @ A @ B ) @ C )
      = ( ord_less_rat @ A @ ( plus_plus_rat @ C @ B ) ) ) ).

% diff_less_eq
thf(fact_2424_diff__less__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( ord_less_int @ A @ ( plus_plus_int @ C @ B ) ) ) ).

% diff_less_eq
thf(fact_2425_linordered__semidom__class_Oadd__diff__inverse,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ~ ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( plus_p5714425477246183910nteger @ B @ ( minus_8373710615458151222nteger @ A @ B ) )
        = A ) ) ).

% linordered_semidom_class.add_diff_inverse
thf(fact_2426_linordered__semidom__class_Oadd__diff__inverse,axiom,
    ! [A: rat,B: rat] :
      ( ~ ( ord_less_rat @ A @ B )
     => ( ( plus_plus_rat @ B @ ( minus_minus_rat @ A @ B ) )
        = A ) ) ).

% linordered_semidom_class.add_diff_inverse
thf(fact_2427_linordered__semidom__class_Oadd__diff__inverse,axiom,
    ! [A: nat,B: nat] :
      ( ~ ( ord_less_nat @ A @ B )
     => ( ( plus_plus_nat @ B @ ( minus_minus_nat @ A @ B ) )
        = A ) ) ).

% linordered_semidom_class.add_diff_inverse
thf(fact_2428_linordered__semidom__class_Oadd__diff__inverse,axiom,
    ! [A: int,B: int] :
      ( ~ ( ord_less_int @ A @ B )
     => ( ( plus_plus_int @ B @ ( minus_minus_int @ A @ B ) )
        = A ) ) ).

% linordered_semidom_class.add_diff_inverse
thf(fact_2429_ab__group__add__class_Oab__diff__conv__add__uminus,axiom,
    ( minus_minus_int
    = ( ^ [A2: int,B2: int] : ( plus_plus_int @ A2 @ ( uminus_uminus_int @ B2 ) ) ) ) ).

% ab_group_add_class.ab_diff_conv_add_uminus
thf(fact_2430_ab__group__add__class_Oab__diff__conv__add__uminus,axiom,
    ( minus_8373710615458151222nteger
    = ( ^ [A2: code_integer,B2: code_integer] : ( plus_p5714425477246183910nteger @ A2 @ ( uminus1351360451143612070nteger @ B2 ) ) ) ) ).

% ab_group_add_class.ab_diff_conv_add_uminus
thf(fact_2431_ab__group__add__class_Oab__diff__conv__add__uminus,axiom,
    ( minus_minus_rat
    = ( ^ [A2: rat,B2: rat] : ( plus_plus_rat @ A2 @ ( uminus_uminus_rat @ B2 ) ) ) ) ).

% ab_group_add_class.ab_diff_conv_add_uminus
thf(fact_2432_diff__conv__add__uminus,axiom,
    ( minus_minus_int
    = ( ^ [A2: int,B2: int] : ( plus_plus_int @ A2 @ ( uminus_uminus_int @ B2 ) ) ) ) ).

% diff_conv_add_uminus
thf(fact_2433_diff__conv__add__uminus,axiom,
    ( minus_8373710615458151222nteger
    = ( ^ [A2: code_integer,B2: code_integer] : ( plus_p5714425477246183910nteger @ A2 @ ( uminus1351360451143612070nteger @ B2 ) ) ) ) ).

% diff_conv_add_uminus
thf(fact_2434_diff__conv__add__uminus,axiom,
    ( minus_minus_rat
    = ( ^ [A2: rat,B2: rat] : ( plus_plus_rat @ A2 @ ( uminus_uminus_rat @ B2 ) ) ) ) ).

% diff_conv_add_uminus
thf(fact_2435_group__cancel_Osub2,axiom,
    ! [B4: int,K: int,B: int,A: int] :
      ( ( B4
        = ( plus_plus_int @ K @ B ) )
     => ( ( minus_minus_int @ A @ B4 )
        = ( plus_plus_int @ ( uminus_uminus_int @ K ) @ ( minus_minus_int @ A @ B ) ) ) ) ).

% group_cancel.sub2
thf(fact_2436_group__cancel_Osub2,axiom,
    ! [B4: code_integer,K: code_integer,B: code_integer,A: code_integer] :
      ( ( B4
        = ( plus_p5714425477246183910nteger @ K @ B ) )
     => ( ( minus_8373710615458151222nteger @ A @ B4 )
        = ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ K ) @ ( minus_8373710615458151222nteger @ A @ B ) ) ) ) ).

% group_cancel.sub2
thf(fact_2437_group__cancel_Osub2,axiom,
    ! [B4: rat,K: rat,B: rat,A: rat] :
      ( ( B4
        = ( plus_plus_rat @ K @ B ) )
     => ( ( minus_minus_rat @ A @ B4 )
        = ( plus_plus_rat @ ( uminus_uminus_rat @ K ) @ ( minus_minus_rat @ A @ B ) ) ) ) ).

% group_cancel.sub2
thf(fact_2438_nat__mult__distrib__neg,axiom,
    ! [Z2: int,Z6: int] :
      ( ( ord_less_eq_int @ Z2 @ zero_zero_int )
     => ( ( nat2 @ ( times_times_int @ Z2 @ Z6 ) )
        = ( times_times_nat @ ( nat2 @ ( uminus_uminus_int @ Z2 ) ) @ ( nat2 @ ( uminus_uminus_int @ Z6 ) ) ) ) ) ).

% nat_mult_distrib_neg
thf(fact_2439_ordered__comm__semiring__class_Ocomm__mult__left__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) ) ) ) ).

% ordered_comm_semiring_class.comm_mult_left_mono
thf(fact_2440_ordered__comm__semiring__class_Ocomm__mult__left__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) ) ) ) ).

% ordered_comm_semiring_class.comm_mult_left_mono
thf(fact_2441_ordered__comm__semiring__class_Ocomm__mult__left__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
       => ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) ) ) ) ).

% ordered_comm_semiring_class.comm_mult_left_mono
thf(fact_2442_ordered__comm__semiring__class_Ocomm__mult__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
       => ( ord_less_eq_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) ) ) ) ).

% ordered_comm_semiring_class.comm_mult_left_mono
thf(fact_2443_ordered__comm__semiring__class_Ocomm__mult__left__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ zero_zero_int @ C )
       => ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) ) ) ) ).

% ordered_comm_semiring_class.comm_mult_left_mono
thf(fact_2444_zero__le__mult__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
          & ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B ) )
        | ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
          & ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger ) ) ) ) ).

% zero_le_mult_iff
thf(fact_2445_zero__le__mult__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ zero_zero_rat @ B ) )
        | ( ( ord_less_eq_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ B @ zero_zero_rat ) ) ) ) ).

% zero_le_mult_iff
thf(fact_2446_zero__le__mult__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( times_times_int @ A @ B ) )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ A )
          & ( ord_less_eq_int @ zero_zero_int @ B ) )
        | ( ( ord_less_eq_int @ A @ zero_zero_int )
          & ( ord_less_eq_int @ B @ zero_zero_int ) ) ) ) ).

% zero_le_mult_iff
thf(fact_2447_mult__nonneg__nonpos2,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ B @ A ) @ zero_z2226904508553997617atural ) ) ) ).

% mult_nonneg_nonpos2
thf(fact_2448_mult__nonneg__nonpos2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ B @ A ) @ zero_z3403309356797280102nteger ) ) ) ).

% mult_nonneg_nonpos2
thf(fact_2449_mult__nonneg__nonpos2,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ B @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( times_times_rat @ B @ A ) @ zero_zero_rat ) ) ) ).

% mult_nonneg_nonpos2
thf(fact_2450_mult__nonneg__nonpos2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_eq_nat @ ( times_times_nat @ B @ A ) @ zero_zero_nat ) ) ) ).

% mult_nonneg_nonpos2
thf(fact_2451_mult__nonneg__nonpos2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ B @ zero_zero_int )
       => ( ord_less_eq_int @ ( times_times_int @ B @ A ) @ zero_zero_int ) ) ) ).

% mult_nonneg_nonpos2
thf(fact_2452_mult__nonpos__nonneg,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ zero_z2226904508553997617atural )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% mult_nonpos_nonneg
thf(fact_2453_mult__nonpos__nonneg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% mult_nonpos_nonneg
thf(fact_2454_mult__nonpos__nonneg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_eq_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% mult_nonpos_nonneg
thf(fact_2455_mult__nonpos__nonneg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_eq_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% mult_nonpos_nonneg
thf(fact_2456_mult__nonpos__nonneg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ord_less_eq_int @ ( times_times_int @ A @ B ) @ zero_zero_int ) ) ) ).

% mult_nonpos_nonneg
thf(fact_2457_mult__nonneg__nonpos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% mult_nonneg_nonpos
thf(fact_2458_mult__nonneg__nonpos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% mult_nonneg_nonpos
thf(fact_2459_mult__nonneg__nonpos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ B @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% mult_nonneg_nonpos
thf(fact_2460_mult__nonneg__nonpos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_eq_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% mult_nonneg_nonpos
thf(fact_2461_mult__nonneg__nonpos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ B @ zero_zero_int )
       => ( ord_less_eq_int @ ( times_times_int @ A @ B ) @ zero_zero_int ) ) ) ).

% mult_nonneg_nonpos
thf(fact_2462_mult__nonneg__nonneg,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( times_2397367101498566445atural @ A @ B ) ) ) ) ).

% mult_nonneg_nonneg
thf(fact_2463_mult__nonneg__nonneg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) ) ) ) ).

% mult_nonneg_nonneg
thf(fact_2464_mult__nonneg__nonneg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_eq_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) ) ) ) ).

% mult_nonneg_nonneg
thf(fact_2465_mult__nonneg__nonneg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_eq_nat @ zero_zero_nat @ ( times_times_nat @ A @ B ) ) ) ) ).

% mult_nonneg_nonneg
thf(fact_2466_mult__nonneg__nonneg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ord_less_eq_int @ zero_zero_int @ ( times_times_int @ A @ B ) ) ) ) ).

% mult_nonneg_nonneg
thf(fact_2467_split__mult__neg__le,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
          & ( ord_le1926595141338095240atural @ B @ zero_z2226904508553997617atural ) )
        | ( ( ord_le1926595141338095240atural @ A @ zero_z2226904508553997617atural )
          & ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B ) ) )
     => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ).

% split_mult_neg_le
thf(fact_2468_split__mult__neg__le,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
          & ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger ) )
        | ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
          & ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B ) ) )
     => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ).

% split_mult_neg_le
thf(fact_2469_split__mult__neg__le,axiom,
    ! [A: rat,B: rat] :
      ( ( ( ( ord_less_eq_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ B @ zero_zero_rat ) )
        | ( ( ord_less_eq_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ zero_zero_rat @ B ) ) )
     => ( ord_less_eq_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat ) ) ).

% split_mult_neg_le
thf(fact_2470_split__mult__neg__le,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ( ord_less_eq_nat @ zero_zero_nat @ A )
          & ( ord_less_eq_nat @ B @ zero_zero_nat ) )
        | ( ( ord_less_eq_nat @ A @ zero_zero_nat )
          & ( ord_less_eq_nat @ zero_zero_nat @ B ) ) )
     => ( ord_less_eq_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ).

% split_mult_neg_le
thf(fact_2471_split__mult__neg__le,axiom,
    ! [A: int,B: int] :
      ( ( ( ( ord_less_eq_int @ zero_zero_int @ A )
          & ( ord_less_eq_int @ B @ zero_zero_int ) )
        | ( ( ord_less_eq_int @ A @ zero_zero_int )
          & ( ord_less_eq_int @ zero_zero_int @ B ) ) )
     => ( ord_less_eq_int @ ( times_times_int @ A @ B ) @ zero_zero_int ) ) ).

% split_mult_neg_le
thf(fact_2472_mult__le__0__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ B ) @ zero_z3403309356797280102nteger )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
          & ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger ) )
        | ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
          & ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B ) ) ) ) ).

% mult_le_0_iff
thf(fact_2473_mult__le__0__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ B @ zero_zero_rat ) )
        | ( ( ord_less_eq_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ zero_zero_rat @ B ) ) ) ) ).

% mult_le_0_iff
thf(fact_2474_mult__le__0__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ ( times_times_int @ A @ B ) @ zero_zero_int )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ A )
          & ( ord_less_eq_int @ B @ zero_zero_int ) )
        | ( ( ord_less_eq_int @ A @ zero_zero_int )
          & ( ord_less_eq_int @ zero_zero_int @ B ) ) ) ) ).

% mult_le_0_iff
thf(fact_2475_mult__right__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ C ) ) ) ) ).

% mult_right_mono
thf(fact_2476_mult__right__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% mult_right_mono
thf(fact_2477_mult__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
       => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% mult_right_mono
thf(fact_2478_mult__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
       => ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ) ).

% mult_right_mono
thf(fact_2479_mult__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ zero_zero_int @ C )
       => ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% mult_right_mono
thf(fact_2480_mult__right__mono__neg,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ B @ A )
     => ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% mult_right_mono_neg
thf(fact_2481_mult__right__mono__neg,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_eq_rat @ B @ A )
     => ( ( ord_less_eq_rat @ C @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% mult_right_mono_neg
thf(fact_2482_mult__right__mono__neg,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ( ord_less_eq_int @ C @ zero_zero_int )
       => ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% mult_right_mono_neg
thf(fact_2483_mult__left__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) ) ) ) ).

% mult_left_mono
thf(fact_2484_mult__left__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) ) ) ) ).

% mult_left_mono
thf(fact_2485_mult__left__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
       => ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) ) ) ) ).

% mult_left_mono
thf(fact_2486_mult__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
       => ( ord_less_eq_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) ) ) ) ).

% mult_left_mono
thf(fact_2487_mult__left__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ zero_zero_int @ C )
       => ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) ) ) ) ).

% mult_left_mono
thf(fact_2488_mult__nonpos__nonpos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) ) ) ) ).

% mult_nonpos_nonpos
thf(fact_2489_mult__nonpos__nonpos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ B @ zero_zero_rat )
       => ( ord_less_eq_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) ) ) ) ).

% mult_nonpos_nonpos
thf(fact_2490_mult__nonpos__nonpos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( ord_less_eq_int @ B @ zero_zero_int )
       => ( ord_less_eq_int @ zero_zero_int @ ( times_times_int @ A @ B ) ) ) ) ).

% mult_nonpos_nonpos
thf(fact_2491_mult__left__mono__neg,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ B @ A )
     => ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) ) ) ) ).

% mult_left_mono_neg
thf(fact_2492_mult__left__mono__neg,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_eq_rat @ B @ A )
     => ( ( ord_less_eq_rat @ C @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) ) ) ) ).

% mult_left_mono_neg
thf(fact_2493_mult__left__mono__neg,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_eq_int @ B @ A )
     => ( ( ord_less_eq_int @ C @ zero_zero_int )
       => ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) ) ) ) ).

% mult_left_mono_neg
thf(fact_2494_split__mult__pos__le,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
          & ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B ) )
        | ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
          & ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger ) ) )
     => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) ) ) ).

% split_mult_pos_le
thf(fact_2495_split__mult__pos__le,axiom,
    ! [A: rat,B: rat] :
      ( ( ( ( ord_less_eq_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ zero_zero_rat @ B ) )
        | ( ( ord_less_eq_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ B @ zero_zero_rat ) ) )
     => ( ord_less_eq_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) ) ) ).

% split_mult_pos_le
thf(fact_2496_split__mult__pos__le,axiom,
    ! [A: int,B: int] :
      ( ( ( ( ord_less_eq_int @ zero_zero_int @ A )
          & ( ord_less_eq_int @ zero_zero_int @ B ) )
        | ( ( ord_less_eq_int @ A @ zero_zero_int )
          & ( ord_less_eq_int @ B @ zero_zero_int ) ) )
     => ( ord_less_eq_int @ zero_zero_int @ ( times_times_int @ A @ B ) ) ) ).

% split_mult_pos_le
thf(fact_2497_zero__le__square,axiom,
    ! [A: code_integer] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ A ) ) ).

% zero_le_square
thf(fact_2498_zero__le__square,axiom,
    ! [A: rat] : ( ord_less_eq_rat @ zero_zero_rat @ ( times_times_rat @ A @ A ) ) ).

% zero_le_square
thf(fact_2499_zero__le__square,axiom,
    ! [A: int] : ( ord_less_eq_int @ zero_zero_int @ ( times_times_int @ A @ A ) ) ).

% zero_le_square
thf(fact_2500_mult__mono_H,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural,D: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ C @ D )
       => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
           => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ D ) ) ) ) ) ) ).

% mult_mono'
thf(fact_2501_mult__mono_H,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ C @ D )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
           => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) ) ) ) ) ) ).

% mult_mono'
thf(fact_2502_mult__mono_H,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ C @ D )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
           => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ D ) ) ) ) ) ) ).

% mult_mono'
thf(fact_2503_mult__mono_H,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) ) ) ) ) ) ).

% mult_mono'
thf(fact_2504_mult__mono_H,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ C @ D )
       => ( ( ord_less_eq_int @ zero_zero_int @ A )
         => ( ( ord_less_eq_int @ zero_zero_int @ C )
           => ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% mult_mono'
thf(fact_2505_mult__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural,D: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ C @ D )
       => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
           => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ D ) ) ) ) ) ) ).

% mult_mono
thf(fact_2506_mult__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ C @ D )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
           => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) ) ) ) ) ) ).

% mult_mono
thf(fact_2507_mult__mono,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ C @ D )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
           => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ D ) ) ) ) ) ) ).

% mult_mono
thf(fact_2508_mult__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) ) ) ) ) ) ).

% mult_mono
thf(fact_2509_mult__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ C @ D )
       => ( ( ord_less_eq_int @ zero_zero_int @ B )
         => ( ( ord_less_eq_int @ zero_zero_int @ C )
           => ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% mult_mono
thf(fact_2510_linordered__comm__semiring__strict__class_Ocomm__mult__strict__left__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) ) ) ) ).

% linordered_comm_semiring_strict_class.comm_mult_strict_left_mono
thf(fact_2511_linordered__comm__semiring__strict__class_Ocomm__mult__strict__left__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) ) ) ) ).

% linordered_comm_semiring_strict_class.comm_mult_strict_left_mono
thf(fact_2512_linordered__comm__semiring__strict__class_Ocomm__mult__strict__left__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ zero_zero_rat @ C )
       => ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) ) ) ) ).

% linordered_comm_semiring_strict_class.comm_mult_strict_left_mono
thf(fact_2513_linordered__comm__semiring__strict__class_Ocomm__mult__strict__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) ) ) ) ).

% linordered_comm_semiring_strict_class.comm_mult_strict_left_mono
thf(fact_2514_linordered__comm__semiring__strict__class_Ocomm__mult__strict__left__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ zero_zero_int @ C )
       => ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) ) ) ) ).

% linordered_comm_semiring_strict_class.comm_mult_strict_left_mono
thf(fact_2515_mult__less__cancel__right__disj,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
          & ( ord_le6747313008572928689nteger @ A @ B ) )
        | ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
          & ( ord_le6747313008572928689nteger @ B @ A ) ) ) ) ).

% mult_less_cancel_right_disj
thf(fact_2516_mult__less__cancel__right__disj,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
          & ( ord_less_rat @ A @ B ) )
        | ( ( ord_less_rat @ C @ zero_zero_rat )
          & ( ord_less_rat @ B @ A ) ) ) ) ).

% mult_less_cancel_right_disj
thf(fact_2517_mult__less__cancel__right__disj,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
          & ( ord_less_int @ A @ B ) )
        | ( ( ord_less_int @ C @ zero_zero_int )
          & ( ord_less_int @ B @ A ) ) ) ) ).

% mult_less_cancel_right_disj
thf(fact_2518_mult__strict__right__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ C ) ) ) ) ).

% mult_strict_right_mono
thf(fact_2519_mult__strict__right__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% mult_strict_right_mono
thf(fact_2520_mult__strict__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ zero_zero_rat @ C )
       => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% mult_strict_right_mono
thf(fact_2521_mult__strict__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ) ).

% mult_strict_right_mono
thf(fact_2522_mult__strict__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ zero_zero_int @ C )
       => ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% mult_strict_right_mono
thf(fact_2523_mult__strict__right__mono__neg,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ B @ A )
     => ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% mult_strict_right_mono_neg
thf(fact_2524_mult__strict__right__mono__neg,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_rat @ B @ A )
     => ( ( ord_less_rat @ C @ zero_zero_rat )
       => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% mult_strict_right_mono_neg
thf(fact_2525_mult__strict__right__mono__neg,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_int @ B @ A )
     => ( ( ord_less_int @ C @ zero_zero_int )
       => ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% mult_strict_right_mono_neg
thf(fact_2526_mult__less__cancel__left__disj,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
          & ( ord_le6747313008572928689nteger @ A @ B ) )
        | ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
          & ( ord_le6747313008572928689nteger @ B @ A ) ) ) ) ).

% mult_less_cancel_left_disj
thf(fact_2527_mult__less__cancel__left__disj,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
          & ( ord_less_rat @ A @ B ) )
        | ( ( ord_less_rat @ C @ zero_zero_rat )
          & ( ord_less_rat @ B @ A ) ) ) ) ).

% mult_less_cancel_left_disj
thf(fact_2528_mult__less__cancel__left__disj,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
          & ( ord_less_int @ A @ B ) )
        | ( ( ord_less_int @ C @ zero_zero_int )
          & ( ord_less_int @ B @ A ) ) ) ) ).

% mult_less_cancel_left_disj
thf(fact_2529_mult__strict__left__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) ) ) ) ).

% mult_strict_left_mono
thf(fact_2530_mult__strict__left__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) ) ) ) ).

% mult_strict_left_mono
thf(fact_2531_mult__strict__left__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ zero_zero_rat @ C )
       => ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) ) ) ) ).

% mult_strict_left_mono
thf(fact_2532_mult__strict__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) ) ) ) ).

% mult_strict_left_mono
thf(fact_2533_mult__strict__left__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ zero_zero_int @ C )
       => ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) ) ) ) ).

% mult_strict_left_mono
thf(fact_2534_mult__strict__left__mono__neg,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ B @ A )
     => ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) ) ) ) ).

% mult_strict_left_mono_neg
thf(fact_2535_mult__strict__left__mono__neg,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_rat @ B @ A )
     => ( ( ord_less_rat @ C @ zero_zero_rat )
       => ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) ) ) ) ).

% mult_strict_left_mono_neg
thf(fact_2536_mult__strict__left__mono__neg,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_int @ B @ A )
     => ( ( ord_less_int @ C @ zero_zero_int )
       => ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) ) ) ) ).

% mult_strict_left_mono_neg
thf(fact_2537_mult__less__cancel__left__pos,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
     => ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
        = ( ord_le6747313008572928689nteger @ A @ B ) ) ) ).

% mult_less_cancel_left_pos
thf(fact_2538_mult__less__cancel__left__pos,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
        = ( ord_less_rat @ A @ B ) ) ) ).

% mult_less_cancel_left_pos
thf(fact_2539_mult__less__cancel__left__pos,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ C )
     => ( ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
        = ( ord_less_int @ A @ B ) ) ) ).

% mult_less_cancel_left_pos
thf(fact_2540_mult__less__cancel__left__neg,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
     => ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
        = ( ord_le6747313008572928689nteger @ B @ A ) ) ) ).

% mult_less_cancel_left_neg
thf(fact_2541_mult__less__cancel__left__neg,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
        = ( ord_less_rat @ B @ A ) ) ) ).

% mult_less_cancel_left_neg
thf(fact_2542_mult__less__cancel__left__neg,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ C @ zero_zero_int )
     => ( ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
        = ( ord_less_int @ B @ A ) ) ) ).

% mult_less_cancel_left_neg
thf(fact_2543_zero__less__mult__pos2,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( times_2397367101498566445atural @ B @ A ) )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
       => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B ) ) ) ).

% zero_less_mult_pos2
thf(fact_2544_zero__less__mult__pos2,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ B @ A ) )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B ) ) ) ).

% zero_less_mult_pos2
thf(fact_2545_zero__less__mult__pos2,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ B @ A ) )
     => ( ( ord_less_rat @ zero_zero_rat @ A )
       => ( ord_less_rat @ zero_zero_rat @ B ) ) ) ).

% zero_less_mult_pos2
thf(fact_2546_zero__less__mult__pos2,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ B @ A ) )
     => ( ( ord_less_nat @ zero_zero_nat @ A )
       => ( ord_less_nat @ zero_zero_nat @ B ) ) ) ).

% zero_less_mult_pos2
thf(fact_2547_zero__less__mult__pos2,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ ( times_times_int @ B @ A ) )
     => ( ( ord_less_int @ zero_zero_int @ A )
       => ( ord_less_int @ zero_zero_int @ B ) ) ) ).

% zero_less_mult_pos2
thf(fact_2548_zero__less__mult__pos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( times_2397367101498566445atural @ A @ B ) )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
       => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B ) ) ) ).

% zero_less_mult_pos
thf(fact_2549_zero__less__mult__pos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B ) ) ) ).

% zero_less_mult_pos
thf(fact_2550_zero__less__mult__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
     => ( ( ord_less_rat @ zero_zero_rat @ A )
       => ( ord_less_rat @ zero_zero_rat @ B ) ) ) ).

% zero_less_mult_pos
thf(fact_2551_zero__less__mult__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ A @ B ) )
     => ( ( ord_less_nat @ zero_zero_nat @ A )
       => ( ord_less_nat @ zero_zero_nat @ B ) ) ) ).

% zero_less_mult_pos
thf(fact_2552_zero__less__mult__pos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ ( times_times_int @ A @ B ) )
     => ( ( ord_less_int @ zero_zero_int @ A )
       => ( ord_less_int @ zero_zero_int @ B ) ) ) ).

% zero_less_mult_pos
thf(fact_2553_zero__less__mult__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
          & ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B ) )
        | ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
          & ( ord_le6747313008572928689nteger @ B @ zero_z3403309356797280102nteger ) ) ) ) ).

% zero_less_mult_iff
thf(fact_2554_zero__less__mult__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_rat @ zero_zero_rat @ B ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_rat @ B @ zero_zero_rat ) ) ) ) ).

% zero_less_mult_iff
thf(fact_2555_zero__less__mult__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ ( times_times_int @ A @ B ) )
      = ( ( ( ord_less_int @ zero_zero_int @ A )
          & ( ord_less_int @ zero_zero_int @ B ) )
        | ( ( ord_less_int @ A @ zero_zero_int )
          & ( ord_less_int @ B @ zero_zero_int ) ) ) ) ).

% zero_less_mult_iff
thf(fact_2556_mult__pos__neg2,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ B @ A ) @ zero_z2226904508553997617atural ) ) ) ).

% mult_pos_neg2
thf(fact_2557_mult__pos__neg2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ B @ A ) @ zero_z3403309356797280102nteger ) ) ) ).

% mult_pos_neg2
thf(fact_2558_mult__pos__neg2,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ord_less_rat @ ( times_times_rat @ B @ A ) @ zero_zero_rat ) ) ) ).

% mult_pos_neg2
thf(fact_2559_mult__pos__neg2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( times_times_nat @ B @ A ) @ zero_zero_nat ) ) ) ).

% mult_pos_neg2
thf(fact_2560_mult__pos__neg2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_int @ ( times_times_int @ B @ A ) @ zero_zero_int ) ) ) ).

% mult_pos_neg2
thf(fact_2561_mult__pos__pos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( times_2397367101498566445atural @ A @ B ) ) ) ) ).

% mult_pos_pos
thf(fact_2562_mult__pos__pos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) ) ) ) ).

% mult_pos_pos
thf(fact_2563_mult__pos__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ zero_zero_rat @ B )
       => ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) ) ) ) ).

% mult_pos_pos
thf(fact_2564_mult__pos__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ A @ B ) ) ) ) ).

% mult_pos_pos
thf(fact_2565_mult__pos__pos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ord_less_int @ zero_zero_int @ ( times_times_int @ A @ B ) ) ) ) ).

% mult_pos_pos
thf(fact_2566_mult__pos__neg,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ B @ zero_z2226904508553997617atural )
       => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% mult_pos_neg
thf(fact_2567_mult__pos__neg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% mult_pos_neg
thf(fact_2568_mult__pos__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ord_less_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% mult_pos_neg
thf(fact_2569_mult__pos__neg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% mult_pos_neg
thf(fact_2570_mult__pos__neg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_int @ ( times_times_int @ A @ B ) @ zero_zero_int ) ) ) ).

% mult_pos_neg
thf(fact_2571_mult__neg__pos,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ zero_z2226904508553997617atural )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ B ) @ zero_z2226904508553997617atural ) ) ) ).

% mult_neg_pos
thf(fact_2572_mult__neg__pos,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ B ) @ zero_z3403309356797280102nteger ) ) ) ).

% mult_neg_pos
thf(fact_2573_mult__neg__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_rat @ zero_zero_rat @ B )
       => ( ord_less_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat ) ) ) ).

% mult_neg_pos
thf(fact_2574_mult__neg__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ zero_zero_nat )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% mult_neg_pos
thf(fact_2575_mult__neg__pos,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ord_less_int @ ( times_times_int @ A @ B ) @ zero_zero_int ) ) ) ).

% mult_neg_pos
thf(fact_2576_mult__less__0__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ B ) @ zero_z3403309356797280102nteger )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
          & ( ord_le6747313008572928689nteger @ B @ zero_z3403309356797280102nteger ) )
        | ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
          & ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B ) ) ) ) ).

% mult_less_0_iff
thf(fact_2577_mult__less__0__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ A @ B ) @ zero_zero_rat )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_rat @ B @ zero_zero_rat ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_rat @ zero_zero_rat @ B ) ) ) ) ).

% mult_less_0_iff
thf(fact_2578_mult__less__0__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ ( times_times_int @ A @ B ) @ zero_zero_int )
      = ( ( ( ord_less_int @ zero_zero_int @ A )
          & ( ord_less_int @ B @ zero_zero_int ) )
        | ( ( ord_less_int @ A @ zero_zero_int )
          & ( ord_less_int @ zero_zero_int @ B ) ) ) ) ).

% mult_less_0_iff
thf(fact_2579_not__square__less__zero,axiom,
    ! [A: code_integer] :
      ~ ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ A ) @ zero_z3403309356797280102nteger ) ).

% not_square_less_zero
thf(fact_2580_not__square__less__zero,axiom,
    ! [A: rat] :
      ~ ( ord_less_rat @ ( times_times_rat @ A @ A ) @ zero_zero_rat ) ).

% not_square_less_zero
thf(fact_2581_not__square__less__zero,axiom,
    ! [A: int] :
      ~ ( ord_less_int @ ( times_times_int @ A @ A ) @ zero_zero_int ) ).

% not_square_less_zero
thf(fact_2582_mult__neg__neg,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( ord_le6747313008572928689nteger @ B @ zero_z3403309356797280102nteger )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( times_3573771949741848930nteger @ A @ B ) ) ) ) ).

% mult_neg_neg
thf(fact_2583_mult__neg__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_rat @ B @ zero_zero_rat )
       => ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) ) ) ) ).

% mult_neg_neg
thf(fact_2584_mult__neg__neg,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_int @ zero_zero_int @ ( times_times_int @ A @ B ) ) ) ) ).

% mult_neg_neg
thf(fact_2585_add__scale__eq__noteq,axiom,
    ! [R: code_integer,A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( R != zero_z3403309356797280102nteger )
     => ( ( ( A = B )
          & ( C != D ) )
       => ( ( plus_p5714425477246183910nteger @ A @ ( times_3573771949741848930nteger @ R @ C ) )
         != ( plus_p5714425477246183910nteger @ B @ ( times_3573771949741848930nteger @ R @ D ) ) ) ) ) ).

% add_scale_eq_noteq
thf(fact_2586_add__scale__eq__noteq,axiom,
    ! [R: rat,A: rat,B: rat,C: rat,D: rat] :
      ( ( R != zero_zero_rat )
     => ( ( ( A = B )
          & ( C != D ) )
       => ( ( plus_plus_rat @ A @ ( times_times_rat @ R @ C ) )
         != ( plus_plus_rat @ B @ ( times_times_rat @ R @ D ) ) ) ) ) ).

% add_scale_eq_noteq
thf(fact_2587_add__scale__eq__noteq,axiom,
    ! [R: nat,A: nat,B: nat,C: nat,D: nat] :
      ( ( R != zero_zero_nat )
     => ( ( ( A = B )
          & ( C != D ) )
       => ( ( plus_plus_nat @ A @ ( times_times_nat @ R @ C ) )
         != ( plus_plus_nat @ B @ ( times_times_nat @ R @ D ) ) ) ) ) ).

% add_scale_eq_noteq
thf(fact_2588_add__scale__eq__noteq,axiom,
    ! [R: int,A: int,B: int,C: int,D: int] :
      ( ( R != zero_zero_int )
     => ( ( ( A = B )
          & ( C != D ) )
       => ( ( plus_plus_int @ A @ ( times_times_int @ R @ C ) )
         != ( plus_plus_int @ B @ ( times_times_int @ R @ D ) ) ) ) ) ).

% add_scale_eq_noteq
thf(fact_2589_less__1__mult,axiom,
    ! [M: code_natural,N: code_natural] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ M )
     => ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ N )
       => ( ord_le5570908160329646204atural @ one_one_Code_natural @ ( times_2397367101498566445atural @ M @ N ) ) ) ) ).

% less_1_mult
thf(fact_2590_less__1__mult,axiom,
    ! [M: code_integer,N: code_integer] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ M )
     => ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ N )
       => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( times_3573771949741848930nteger @ M @ N ) ) ) ) ).

% less_1_mult
thf(fact_2591_less__1__mult,axiom,
    ! [M: rat,N: rat] :
      ( ( ord_less_rat @ one_one_rat @ M )
     => ( ( ord_less_rat @ one_one_rat @ N )
       => ( ord_less_rat @ one_one_rat @ ( times_times_rat @ M @ N ) ) ) ) ).

% less_1_mult
thf(fact_2592_less__1__mult,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ M )
     => ( ( ord_less_nat @ one_one_nat @ N )
       => ( ord_less_nat @ one_one_nat @ ( times_times_nat @ M @ N ) ) ) ) ).

% less_1_mult
thf(fact_2593_less__1__mult,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_int @ one_one_int @ M )
     => ( ( ord_less_int @ one_one_int @ N )
       => ( ord_less_int @ one_one_int @ ( times_times_int @ M @ N ) ) ) ) ).

% less_1_mult
thf(fact_2594_Suc__to__right,axiom,
    ! [N: nat,M: nat] :
      ( ( ( suc @ N )
        = M )
     => ( N
        = ( minus_minus_nat @ M @ ( suc @ zero_zero_nat ) ) ) ) ).

% Suc_to_right
thf(fact_2595_diff__less,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ M )
       => ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ M ) ) ) ).

% diff_less
thf(fact_2596_Suc__diff__Suc,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ N @ M )
     => ( ( suc @ ( minus_minus_nat @ M @ ( suc @ N ) ) )
        = ( minus_minus_nat @ M @ N ) ) ) ).

% Suc_diff_Suc
thf(fact_2597_diff__less__Suc,axiom,
    ! [M: nat,N: nat] : ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ ( suc @ M ) ) ).

% diff_less_Suc
thf(fact_2598_square__eq__1__iff,axiom,
    ! [X2: int] :
      ( ( ( times_times_int @ X2 @ X2 )
        = one_one_int )
      = ( ( X2 = one_one_int )
        | ( X2
          = ( uminus_uminus_int @ one_one_int ) ) ) ) ).

% square_eq_1_iff
thf(fact_2599_square__eq__1__iff,axiom,
    ! [X2: code_integer] :
      ( ( ( times_3573771949741848930nteger @ X2 @ X2 )
        = one_one_Code_integer )
      = ( ( X2 = one_one_Code_integer )
        | ( X2
          = ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ) ) ).

% square_eq_1_iff
thf(fact_2600_square__eq__1__iff,axiom,
    ! [X2: rat] :
      ( ( ( times_times_rat @ X2 @ X2 )
        = one_one_rat )
      = ( ( X2 = one_one_rat )
        | ( X2
          = ( uminus_uminus_rat @ one_one_rat ) ) ) ) ).

% square_eq_1_iff
thf(fact_2601_Suc__diff__le,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( minus_minus_nat @ ( suc @ M ) @ N )
        = ( suc @ ( minus_minus_nat @ M @ N ) ) ) ) ).

% Suc_diff_le
thf(fact_2602_diff__add__0,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ N @ ( plus_plus_nat @ N @ M ) )
      = zero_zero_nat ) ).

% diff_add_0
thf(fact_2603_less__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_nat @ M @ N ) ) ) ) ).

% less_diff_iff
thf(fact_2604_diff__less__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ A )
       => ( ord_less_nat @ ( minus_minus_nat @ A @ C ) @ ( minus_minus_nat @ B @ C ) ) ) ) ).

% diff_less_mono
thf(fact_2605_add__diff__inverse__nat,axiom,
    ! [M: nat,N: nat] :
      ( ~ ( ord_less_nat @ M @ N )
     => ( ( plus_plus_nat @ N @ ( minus_minus_nat @ M @ N ) )
        = M ) ) ).

% add_diff_inverse_nat
thf(fact_2606_less__diff__conv,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ ( minus_minus_nat @ J @ K ) )
      = ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ).

% less_diff_conv
thf(fact_2607_le__diff__conv,axiom,
    ! [J: nat,K: nat,I: nat] :
      ( ( ord_less_eq_nat @ ( minus_minus_nat @ J @ K ) @ I )
      = ( ord_less_eq_nat @ J @ ( plus_plus_nat @ I @ K ) ) ) ).

% le_diff_conv
thf(fact_2608_Nat_Ole__diff__conv2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( ord_less_eq_nat @ I @ ( minus_minus_nat @ J @ K ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ) ).

% Nat.le_diff_conv2
thf(fact_2609_Nat_Odiff__add__assoc,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ I @ J ) @ K )
        = ( plus_plus_nat @ I @ ( minus_minus_nat @ J @ K ) ) ) ) ).

% Nat.diff_add_assoc
thf(fact_2610_Nat_Odiff__add__assoc2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ J @ I ) @ K )
        = ( plus_plus_nat @ ( minus_minus_nat @ J @ K ) @ I ) ) ) ).

% Nat.diff_add_assoc2
thf(fact_2611_Nat_Ole__imp__diff__is__add,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ( minus_minus_nat @ J @ I )
          = K )
        = ( J
          = ( plus_plus_nat @ K @ I ) ) ) ) ).

% Nat.le_imp_diff_is_add
thf(fact_2612_minus__int__code_I2_J,axiom,
    ! [L: int] :
      ( ( minus_minus_int @ zero_zero_int @ L )
      = ( uminus_uminus_int @ L ) ) ).

% minus_int_code(2)
thf(fact_2613_mult__less__mono2,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_nat @ ( times_times_nat @ K @ I ) @ ( times_times_nat @ K @ J ) ) ) ) ).

% mult_less_mono2
thf(fact_2614_mult__less__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_nat @ ( times_times_nat @ I @ K ) @ ( times_times_nat @ J @ K ) ) ) ) ).

% mult_less_mono1
thf(fact_2615_int__le__induct,axiom,
    ! [I: int,K: int,P: int > $o] :
      ( ( ord_less_eq_int @ I @ K )
     => ( ( P @ K )
       => ( ! [I3: int] :
              ( ( ord_less_eq_int @ I3 @ K )
             => ( ( P @ I3 )
               => ( P @ ( minus_minus_int @ I3 @ one_one_int ) ) ) )
         => ( P @ I ) ) ) ) ).

% int_le_induct
thf(fact_2616_Suc__mult__less__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ ( suc @ K ) @ M ) @ ( times_times_nat @ ( suc @ K ) @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% Suc_mult_less_cancel1
thf(fact_2617_diff__Suc__eq__diff__pred,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ M @ ( suc @ N ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M @ one_one_nat ) @ N ) ) ).

% diff_Suc_eq_diff_pred
thf(fact_2618_diff__nat__eq__if,axiom,
    ! [Z6: int,Z2: int] :
      ( ( ( ord_less_int @ Z6 @ zero_zero_int )
       => ( ( minus_minus_nat @ ( nat2 @ Z2 ) @ ( nat2 @ Z6 ) )
          = ( nat2 @ Z2 ) ) )
      & ( ~ ( ord_less_int @ Z6 @ zero_zero_int )
       => ( ( minus_minus_nat @ ( nat2 @ Z2 ) @ ( nat2 @ Z6 ) )
          = ( if_nat @ ( ord_less_int @ ( minus_minus_int @ Z2 @ Z6 ) @ zero_zero_int ) @ zero_zero_nat @ ( nat2 @ ( minus_minus_int @ Z2 @ Z6 ) ) ) ) ) ) ).

% diff_nat_eq_if
thf(fact_2619_int__less__induct,axiom,
    ! [I: int,K: int,P: int > $o] :
      ( ( ord_less_int @ I @ K )
     => ( ( P @ ( minus_minus_int @ K @ one_one_int ) )
       => ( ! [I3: int] :
              ( ( ord_less_int @ I3 @ K )
             => ( ( P @ I3 )
               => ( P @ ( minus_minus_int @ I3 @ one_one_int ) ) ) )
         => ( P @ I ) ) ) ) ).

% int_less_induct
thf(fact_2620_Suc__mult__le__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ ( suc @ K ) @ M ) @ ( times_times_nat @ ( suc @ K ) @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% Suc_mult_le_cancel1
thf(fact_2621_mult__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( times_times_nat @ ( suc @ M ) @ N )
      = ( plus_plus_nat @ N @ ( times_times_nat @ M @ N ) ) ) ).

% mult_Suc
thf(fact_2622_mlex__snd__decrI,axiom,
    ! [A: nat,A5: nat,B: nat,B5: nat,N4: nat] :
      ( ( A = A5 )
     => ( ( ord_less_nat @ B @ B5 )
       => ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ A @ N4 ) @ B ) @ ( plus_plus_nat @ ( times_times_nat @ A5 @ N4 ) @ B5 ) ) ) ) ).

% mlex_snd_decrI
thf(fact_2623_mlex__fst__decrI,axiom,
    ! [A: nat,A5: nat,B: nat,N4: nat,B5: nat] :
      ( ( ord_less_nat @ A @ A5 )
     => ( ( ord_less_nat @ B @ N4 )
       => ( ( ord_less_nat @ B5 @ N4 )
         => ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ A @ N4 ) @ B ) @ ( plus_plus_nat @ ( times_times_nat @ A5 @ N4 ) @ B5 ) ) ) ) ) ).

% mlex_fst_decrI
thf(fact_2624_mlex__bound,axiom,
    ! [A: nat,A4: nat,B: nat,N4: nat] :
      ( ( ord_less_nat @ A @ A4 )
     => ( ( ord_less_nat @ B @ N4 )
       => ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ A @ N4 ) @ B ) @ ( times_times_nat @ A4 @ N4 ) ) ) ) ).

% mlex_bound
thf(fact_2625_mlex__leI,axiom,
    ! [A: nat,A5: nat,B: nat,B5: nat,N4: nat] :
      ( ( ord_less_eq_nat @ A @ A5 )
     => ( ( ord_less_eq_nat @ B @ B5 )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ A @ N4 ) @ B ) @ ( plus_plus_nat @ ( times_times_nat @ A5 @ N4 ) @ B5 ) ) ) ) ).

% mlex_leI
thf(fact_2626_mult__eq__self__implies__10,axiom,
    ! [M: nat,N: nat] :
      ( ( M
        = ( times_times_nat @ M @ N ) )
     => ( ( N = one_one_nat )
        | ( M = zero_zero_nat ) ) ) ).

% mult_eq_self_implies_10
thf(fact_2627_zmult__zless__mono2,axiom,
    ! [I: int,J: int,K: int] :
      ( ( ord_less_int @ I @ J )
     => ( ( ord_less_int @ zero_zero_int @ K )
       => ( ord_less_int @ ( times_times_int @ K @ I ) @ ( times_times_int @ K @ J ) ) ) ) ).

% zmult_zless_mono2
thf(fact_2628_zmult__eq__1__iff,axiom,
    ! [M: int,N: int] :
      ( ( ( times_times_int @ M @ N )
        = one_one_int )
      = ( ( ( M = one_one_int )
          & ( N = one_one_int ) )
        | ( ( M
            = ( uminus_uminus_int @ one_one_int ) )
          & ( N
            = ( uminus_uminus_int @ one_one_int ) ) ) ) ) ).

% zmult_eq_1_iff
thf(fact_2629_pos__zmult__eq__1__iff__lemma,axiom,
    ! [M: int,N: int] :
      ( ( ( times_times_int @ M @ N )
        = one_one_int )
     => ( ( M = one_one_int )
        | ( M
          = ( uminus_uminus_int @ one_one_int ) ) ) ) ).

% pos_zmult_eq_1_iff_lemma
thf(fact_2630_list_Osize_I3_J,axiom,
    ( ( size_size_list_char @ nil_char )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_2631_list_Osize_I3_J,axiom,
    ( ( size_size_list_nat @ nil_nat )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_2632_list_Osize_I3_J,axiom,
    ( ( size_size_list_int @ nil_int )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_2633_list_Osize_I3_J,axiom,
    ( ( size_size_list_o @ nil_o )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_2634_len__greater__imp__nonempty,axiom,
    ! [X2: nat,L: list_char] :
      ( ( ord_less_nat @ X2 @ ( size_size_list_char @ L ) )
     => ( L != nil_char ) ) ).

% len_greater_imp_nonempty
thf(fact_2635_len__greater__imp__nonempty,axiom,
    ! [X2: nat,L: list_nat] :
      ( ( ord_less_nat @ X2 @ ( size_size_list_nat @ L ) )
     => ( L != nil_nat ) ) ).

% len_greater_imp_nonempty
thf(fact_2636_len__greater__imp__nonempty,axiom,
    ! [X2: nat,L: list_int] :
      ( ( ord_less_nat @ X2 @ ( size_size_list_int @ L ) )
     => ( L != nil_int ) ) ).

% len_greater_imp_nonempty
thf(fact_2637_len__greater__imp__nonempty,axiom,
    ! [X2: nat,L: list_o] :
      ( ( ord_less_nat @ X2 @ ( size_size_list_o @ L ) )
     => ( L != nil_o ) ) ).

% len_greater_imp_nonempty
thf(fact_2638_mult__less__le__imp__less,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural,D: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ C @ D )
       => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
         => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ C )
           => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ D ) ) ) ) ) ) ).

% mult_less_le_imp_less
thf(fact_2639_mult__less__le__imp__less,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ C @ D )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
         => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
           => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) ) ) ) ) ) ).

% mult_less_le_imp_less
thf(fact_2640_mult__less__le__imp__less,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_eq_rat @ C @ D )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
         => ( ( ord_less_rat @ zero_zero_rat @ C )
           => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ D ) ) ) ) ) ) ).

% mult_less_le_imp_less
thf(fact_2641_mult__less__le__imp__less,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
         => ( ( ord_less_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) ) ) ) ) ) ).

% mult_less_le_imp_less
thf(fact_2642_mult__less__le__imp__less,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_eq_int @ C @ D )
       => ( ( ord_less_eq_int @ zero_zero_int @ A )
         => ( ( ord_less_int @ zero_zero_int @ C )
           => ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% mult_less_le_imp_less
thf(fact_2643_mult__le__less__imp__less,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural,D: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ B )
     => ( ( ord_le5570908160329646204atural @ C @ D )
       => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
           => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ D ) ) ) ) ) ) ).

% mult_le_less_imp_less
thf(fact_2644_mult__le__less__imp__less,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ C @ D )
       => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
           => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) ) ) ) ) ) ).

% mult_le_less_imp_less
thf(fact_2645_mult__le__less__imp__less,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_rat @ C @ D )
       => ( ( ord_less_rat @ zero_zero_rat @ A )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
           => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ D ) ) ) ) ) ) ).

% mult_le_less_imp_less
thf(fact_2646_mult__le__less__imp__less,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D )
       => ( ( ord_less_nat @ zero_zero_nat @ A )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) ) ) ) ) ) ).

% mult_le_less_imp_less
thf(fact_2647_mult__le__less__imp__less,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_int @ C @ D )
       => ( ( ord_less_int @ zero_zero_int @ A )
         => ( ( ord_less_eq_int @ zero_zero_int @ C )
           => ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% mult_le_less_imp_less
thf(fact_2648_mult__right__le__imp__le,axiom,
    ! [A: code_natural,C: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ C ) )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le1926595141338095240atural @ A @ B ) ) ) ).

% mult_right_le_imp_le
thf(fact_2649_mult__right__le__imp__le,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le3102999989581377725nteger @ A @ B ) ) ) ).

% mult_right_le_imp_le
thf(fact_2650_mult__right__le__imp__le,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) )
     => ( ( ord_less_rat @ zero_zero_rat @ C )
       => ( ord_less_eq_rat @ A @ B ) ) ) ).

% mult_right_le_imp_le
thf(fact_2651_mult__right__le__imp__le,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_eq_nat @ A @ B ) ) ) ).

% mult_right_le_imp_le
thf(fact_2652_mult__right__le__imp__le,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) )
     => ( ( ord_less_int @ zero_zero_int @ C )
       => ( ord_less_eq_int @ A @ B ) ) ) ).

% mult_right_le_imp_le
thf(fact_2653_mult__left__le__imp__le,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le1926595141338095240atural @ A @ B ) ) ) ).

% mult_left_le_imp_le
thf(fact_2654_mult__left__le__imp__le,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le3102999989581377725nteger @ A @ B ) ) ) ).

% mult_left_le_imp_le
thf(fact_2655_mult__left__le__imp__le,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
     => ( ( ord_less_rat @ zero_zero_rat @ C )
       => ( ord_less_eq_rat @ A @ B ) ) ) ).

% mult_left_le_imp_le
thf(fact_2656_mult__left__le__imp__le,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_eq_nat @ A @ B ) ) ) ).

% mult_left_le_imp_le
thf(fact_2657_mult__left__le__imp__le,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
     => ( ( ord_less_int @ zero_zero_int @ C )
       => ( ord_less_eq_int @ A @ B ) ) ) ).

% mult_left_le_imp_le
thf(fact_2658_mult__le__cancel__left__pos,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
     => ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
        = ( ord_le3102999989581377725nteger @ A @ B ) ) ) ).

% mult_le_cancel_left_pos
thf(fact_2659_mult__le__cancel__left__pos,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
        = ( ord_less_eq_rat @ A @ B ) ) ) ).

% mult_le_cancel_left_pos
thf(fact_2660_mult__le__cancel__left__pos,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ C )
     => ( ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
        = ( ord_less_eq_int @ A @ B ) ) ) ).

% mult_le_cancel_left_pos
thf(fact_2661_mult__le__cancel__left__neg,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
     => ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
        = ( ord_le3102999989581377725nteger @ B @ A ) ) ) ).

% mult_le_cancel_left_neg
thf(fact_2662_mult__le__cancel__left__neg,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
        = ( ord_less_eq_rat @ B @ A ) ) ) ).

% mult_le_cancel_left_neg
thf(fact_2663_mult__le__cancel__left__neg,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ C @ zero_zero_int )
     => ( ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
        = ( ord_less_eq_int @ B @ A ) ) ) ).

% mult_le_cancel_left_neg
thf(fact_2664_mult__less__cancel__right,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le6747313008572928689nteger @ A @ B ) )
        & ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le6747313008572928689nteger @ B @ A ) ) ) ) ).

% mult_less_cancel_right
thf(fact_2665_mult__less__cancel__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ A @ B ) )
        & ( ( ord_less_eq_rat @ C @ zero_zero_rat )
         => ( ord_less_rat @ B @ A ) ) ) ) ).

% mult_less_cancel_right
thf(fact_2666_mult__less__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ C )
         => ( ord_less_int @ A @ B ) )
        & ( ( ord_less_eq_int @ C @ zero_zero_int )
         => ( ord_less_int @ B @ A ) ) ) ) ).

% mult_less_cancel_right
thf(fact_2667_mult__strict__mono_H,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural,D: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ( ord_le5570908160329646204atural @ C @ D )
       => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
           => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono'
thf(fact_2668_mult__strict__mono_H,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ C @ D )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
           => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono'
thf(fact_2669_mult__strict__mono_H,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ C @ D )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
           => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono'
thf(fact_2670_mult__strict__mono_H,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono'
thf(fact_2671_mult__strict__mono_H,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ C @ D )
       => ( ( ord_less_eq_int @ zero_zero_int @ A )
         => ( ( ord_less_eq_int @ zero_zero_int @ C )
           => ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono'
thf(fact_2672_mult__right__less__imp__less,axiom,
    ! [A: code_natural,C: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ C ) )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le5570908160329646204atural @ A @ B ) ) ) ).

% mult_right_less_imp_less
thf(fact_2673_mult__right__less__imp__less,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le6747313008572928689nteger @ A @ B ) ) ) ).

% mult_right_less_imp_less
thf(fact_2674_mult__right__less__imp__less,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
       => ( ord_less_rat @ A @ B ) ) ) ).

% mult_right_less_imp_less
thf(fact_2675_mult__right__less__imp__less,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ A @ B ) ) ) ).

% mult_right_less_imp_less
thf(fact_2676_mult__right__less__imp__less,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ C )
       => ( ord_less_int @ A @ B ) ) ) ).

% mult_right_less_imp_less
thf(fact_2677_mult__less__cancel__left,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le6747313008572928689nteger @ A @ B ) )
        & ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le6747313008572928689nteger @ B @ A ) ) ) ) ).

% mult_less_cancel_left
thf(fact_2678_mult__less__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ A @ B ) )
        & ( ( ord_less_eq_rat @ C @ zero_zero_rat )
         => ( ord_less_rat @ B @ A ) ) ) ) ).

% mult_less_cancel_left
thf(fact_2679_mult__less__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ C )
         => ( ord_less_int @ A @ B ) )
        & ( ( ord_less_eq_int @ C @ zero_zero_int )
         => ( ord_less_int @ B @ A ) ) ) ) ).

% mult_less_cancel_left
thf(fact_2680_mult__strict__mono,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural,D: code_natural] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ( ord_le5570908160329646204atural @ C @ D )
       => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B )
         => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
           => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono
thf(fact_2681_mult__strict__mono,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le6747313008572928689nteger @ C @ D )
       => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
           => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono
thf(fact_2682_mult__strict__mono,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ C @ D )
       => ( ( ord_less_rat @ zero_zero_rat @ B )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
           => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono
thf(fact_2683_mult__strict__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D )
       => ( ( ord_less_nat @ zero_zero_nat @ B )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono
thf(fact_2684_mult__strict__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ C @ D )
       => ( ( ord_less_int @ zero_zero_int @ B )
         => ( ( ord_less_eq_int @ zero_zero_int @ C )
           => ( ord_less_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% mult_strict_mono
thf(fact_2685_mult__left__less__imp__less,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ C )
       => ( ord_le5570908160329646204atural @ A @ B ) ) ) ).

% mult_left_less_imp_less
thf(fact_2686_mult__left__less__imp__less,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
       => ( ord_le6747313008572928689nteger @ A @ B ) ) ) ).

% mult_left_less_imp_less
thf(fact_2687_mult__left__less__imp__less,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
       => ( ord_less_rat @ A @ B ) ) ) ).

% mult_left_less_imp_less
thf(fact_2688_mult__left__less__imp__less,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ A @ B ) ) ) ).

% mult_left_less_imp_less
thf(fact_2689_mult__left__less__imp__less,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ C )
       => ( ord_less_int @ A @ B ) ) ) ).

% mult_left_less_imp_less
thf(fact_2690_mult__le__cancel__right,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le3102999989581377725nteger @ A @ B ) )
        & ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le3102999989581377725nteger @ B @ A ) ) ) ) ).

% mult_le_cancel_right
thf(fact_2691_mult__le__cancel__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ A @ B ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_eq_rat @ B @ A ) ) ) ) ).

% mult_le_cancel_right
thf(fact_2692_mult__le__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
         => ( ord_less_eq_int @ A @ B ) )
        & ( ( ord_less_int @ C @ zero_zero_int )
         => ( ord_less_eq_int @ B @ A ) ) ) ) ).

% mult_le_cancel_right
thf(fact_2693_mult__le__cancel__left,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le3102999989581377725nteger @ A @ B ) )
        & ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le3102999989581377725nteger @ B @ A ) ) ) ) ).

% mult_le_cancel_left
thf(fact_2694_mult__le__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ A @ B ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_eq_rat @ B @ A ) ) ) ) ).

% mult_le_cancel_left
thf(fact_2695_mult__le__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
         => ( ord_less_eq_int @ A @ B ) )
        & ( ( ord_less_int @ C @ zero_zero_int )
         => ( ord_less_eq_int @ B @ A ) ) ) ) ).

% mult_le_cancel_left
thf(fact_2696_sum__squares__ge__zero,axiom,
    ! [X2: code_integer,Y: code_integer] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ X2 @ X2 ) @ ( times_3573771949741848930nteger @ Y @ Y ) ) ) ).

% sum_squares_ge_zero
thf(fact_2697_sum__squares__ge__zero,axiom,
    ! [X2: rat,Y: rat] : ( ord_less_eq_rat @ zero_zero_rat @ ( plus_plus_rat @ ( times_times_rat @ X2 @ X2 ) @ ( times_times_rat @ Y @ Y ) ) ) ).

% sum_squares_ge_zero
thf(fact_2698_sum__squares__ge__zero,axiom,
    ! [X2: int,Y: int] : ( ord_less_eq_int @ zero_zero_int @ ( plus_plus_int @ ( times_times_int @ X2 @ X2 ) @ ( times_times_int @ Y @ Y ) ) ) ).

% sum_squares_ge_zero
thf(fact_2699_mult__left__le,axiom,
    ! [C: code_natural,A: code_natural] :
      ( ( ord_le1926595141338095240atural @ C @ one_one_Code_natural )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
       => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ C ) @ A ) ) ) ).

% mult_left_le
thf(fact_2700_mult__left__le,axiom,
    ! [C: code_integer,A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ C @ one_one_Code_integer )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
       => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ A ) ) ) ).

% mult_left_le
thf(fact_2701_mult__left__le,axiom,
    ! [C: rat,A: rat] :
      ( ( ord_less_eq_rat @ C @ one_one_rat )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ A ) ) ) ).

% mult_left_le
thf(fact_2702_mult__left__le,axiom,
    ! [C: nat,A: nat] :
      ( ( ord_less_eq_nat @ C @ one_one_nat )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
       => ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ A ) ) ) ).

% mult_left_le
thf(fact_2703_mult__left__le,axiom,
    ! [C: int,A: int] :
      ( ( ord_less_eq_int @ C @ one_one_int )
     => ( ( ord_less_eq_int @ zero_zero_int @ A )
       => ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ A ) ) ) ).

% mult_left_le
thf(fact_2704_mult__le__one,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ A @ one_one_Code_natural )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ( ord_le1926595141338095240atural @ B @ one_one_Code_natural )
         => ( ord_le1926595141338095240atural @ ( times_2397367101498566445atural @ A @ B ) @ one_one_Code_natural ) ) ) ) ).

% mult_le_one
thf(fact_2705_mult__le__one,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ one_one_Code_integer )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ( ord_le3102999989581377725nteger @ B @ one_one_Code_integer )
         => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ B ) @ one_one_Code_integer ) ) ) ) ).

% mult_le_one
thf(fact_2706_mult__le__one,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ one_one_rat )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ( ord_less_eq_rat @ B @ one_one_rat )
         => ( ord_less_eq_rat @ ( times_times_rat @ A @ B ) @ one_one_rat ) ) ) ) ).

% mult_le_one
thf(fact_2707_mult__le__one,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ one_one_nat )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ( ord_less_eq_nat @ B @ one_one_nat )
         => ( ord_less_eq_nat @ ( times_times_nat @ A @ B ) @ one_one_nat ) ) ) ) ).

% mult_le_one
thf(fact_2708_mult__le__one,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ one_one_int )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ( ord_less_eq_int @ B @ one_one_int )
         => ( ord_less_eq_int @ ( times_times_int @ A @ B ) @ one_one_int ) ) ) ) ).

% mult_le_one
thf(fact_2709_mult__right__le__one__le,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ X2 )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ Y )
       => ( ( ord_le3102999989581377725nteger @ Y @ one_one_Code_integer )
         => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ X2 @ Y ) @ X2 ) ) ) ) ).

% mult_right_le_one_le
thf(fact_2710_mult__right__le__one__le,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X2 )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ Y )
       => ( ( ord_less_eq_rat @ Y @ one_one_rat )
         => ( ord_less_eq_rat @ ( times_times_rat @ X2 @ Y ) @ X2 ) ) ) ) ).

% mult_right_le_one_le
thf(fact_2711_mult__right__le__one__le,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X2 )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y )
       => ( ( ord_less_eq_int @ Y @ one_one_int )
         => ( ord_less_eq_int @ ( times_times_int @ X2 @ Y ) @ X2 ) ) ) ) ).

% mult_right_le_one_le
thf(fact_2712_mult__left__le__one__le,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ X2 )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ Y )
       => ( ( ord_le3102999989581377725nteger @ Y @ one_one_Code_integer )
         => ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ Y @ X2 ) @ X2 ) ) ) ) ).

% mult_left_le_one_le
thf(fact_2713_mult__left__le__one__le,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X2 )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ Y )
       => ( ( ord_less_eq_rat @ Y @ one_one_rat )
         => ( ord_less_eq_rat @ ( times_times_rat @ Y @ X2 ) @ X2 ) ) ) ) ).

% mult_left_le_one_le
thf(fact_2714_mult__left__le__one__le,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X2 )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y )
       => ( ( ord_less_eq_int @ Y @ one_one_int )
         => ( ord_less_eq_int @ ( times_times_int @ Y @ X2 ) @ X2 ) ) ) ) ).

% mult_left_le_one_le
thf(fact_2715_not__sum__squares__lt__zero,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ~ ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ X2 @ X2 ) @ ( times_3573771949741848930nteger @ Y @ Y ) ) @ zero_z3403309356797280102nteger ) ).

% not_sum_squares_lt_zero
thf(fact_2716_not__sum__squares__lt__zero,axiom,
    ! [X2: rat,Y: rat] :
      ~ ( ord_less_rat @ ( plus_plus_rat @ ( times_times_rat @ X2 @ X2 ) @ ( times_times_rat @ Y @ Y ) ) @ zero_zero_rat ) ).

% not_sum_squares_lt_zero
thf(fact_2717_not__sum__squares__lt__zero,axiom,
    ! [X2: int,Y: int] :
      ~ ( ord_less_int @ ( plus_plus_int @ ( times_times_int @ X2 @ X2 ) @ ( times_times_int @ Y @ Y ) ) @ zero_zero_int ) ).

% not_sum_squares_lt_zero
thf(fact_2718_ex__less__of__nat__mult,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ X2 )
     => ? [N2: nat] : ( ord_less_rat @ Y @ ( times_times_rat @ ( semiri681578069525770553at_rat @ N2 ) @ X2 ) ) ) ).

% ex_less_of_nat_mult
thf(fact_2719_diff__Suc__less,axiom,
    ! [N: nat,I: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ ( minus_minus_nat @ N @ ( suc @ I ) ) @ N ) ) ).

% diff_Suc_less
thf(fact_2720_nat__diff__split__asm,axiom,
    ! [P: nat > $o,A: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A @ B ) )
      = ( ~ ( ( ( ord_less_nat @ A @ B )
              & ~ ( P @ zero_zero_nat ) )
            | ? [D4: nat] :
                ( ( A
                  = ( plus_plus_nat @ B @ D4 ) )
                & ~ ( P @ D4 ) ) ) ) ) ).

% nat_diff_split_asm
thf(fact_2721_nat__diff__split,axiom,
    ! [P: nat > $o,A: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A @ B ) )
      = ( ( ( ord_less_nat @ A @ B )
         => ( P @ zero_zero_nat ) )
        & ! [D4: nat] :
            ( ( A
              = ( plus_plus_nat @ B @ D4 ) )
           => ( P @ D4 ) ) ) ) ).

% nat_diff_split
thf(fact_2722_less__diff__conv2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( ord_less_nat @ ( minus_minus_nat @ J @ K ) @ I )
        = ( ord_less_nat @ J @ ( plus_plus_nat @ I @ K ) ) ) ) ).

% less_diff_conv2
thf(fact_2723_power__int__minus__one__diff__commute,axiom,
    ! [A: int,B: int] :
      ( ( power_int_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( minus_minus_int @ A @ B ) )
      = ( power_int_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( minus_minus_int @ B @ A ) ) ) ).

% power_int_minus_one_diff_commute
thf(fact_2724_n__less__n__mult__m,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ M )
       => ( ord_less_nat @ N @ ( times_times_nat @ N @ M ) ) ) ) ).

% n_less_n_mult_m
thf(fact_2725_n__less__m__mult__n,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ M )
       => ( ord_less_nat @ N @ ( times_times_nat @ M @ N ) ) ) ) ).

% n_less_m_mult_n
thf(fact_2726_one__less__mult,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ N )
     => ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ M )
       => ( ord_less_nat @ ( suc @ zero_zero_nat ) @ ( times_times_nat @ M @ N ) ) ) ) ).

% one_less_mult
thf(fact_2727_int__induct,axiom,
    ! [P: int > $o,K: int,I: int] :
      ( ( P @ K )
     => ( ! [I3: int] :
            ( ( ord_less_eq_int @ K @ I3 )
           => ( ( P @ I3 )
             => ( P @ ( plus_plus_int @ I3 @ one_one_int ) ) ) )
       => ( ! [I3: int] :
              ( ( ord_less_eq_int @ I3 @ K )
             => ( ( P @ I3 )
               => ( P @ ( minus_minus_int @ I3 @ one_one_int ) ) ) )
         => ( P @ I ) ) ) ) ).

% int_induct
thf(fact_2728_pos__zmult__eq__1__iff,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_int @ zero_zero_int @ M )
     => ( ( ( times_times_int @ M @ N )
          = one_one_int )
        = ( ( M = one_one_int )
          & ( N = one_one_int ) ) ) ) ).

% pos_zmult_eq_1_iff
thf(fact_2729_frac__def,axiom,
    ( archimedean_frac_rat
    = ( ^ [X: rat] : ( minus_minus_rat @ X @ ( ring_1_of_int_rat @ ( archim3151403230148437115or_rat @ X ) ) ) ) ) ).

% frac_def
thf(fact_2730_dbl__dec__def,axiom,
    ( neg_nu7757733837767384882nteger
    = ( ^ [X: code_integer] : ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ X @ X ) @ one_one_Code_integer ) ) ) ).

% dbl_dec_def
thf(fact_2731_dbl__dec__def,axiom,
    ( neg_nu3179335615603231917ec_rat
    = ( ^ [X: rat] : ( minus_minus_rat @ ( plus_plus_rat @ X @ X ) @ one_one_rat ) ) ) ).

% dbl_dec_def
thf(fact_2732_dbl__dec__def,axiom,
    ( neg_nu3811975205180677377ec_int
    = ( ^ [X: int] : ( minus_minus_int @ ( plus_plus_int @ X @ X ) @ one_one_int ) ) ) ).

% dbl_dec_def
thf(fact_2733_field__le__mult__one__interval,axiom,
    ! [X2: rat,Y: rat] :
      ( ! [Z4: rat] :
          ( ( ord_less_rat @ zero_zero_rat @ Z4 )
         => ( ( ord_less_rat @ Z4 @ one_one_rat )
           => ( ord_less_eq_rat @ ( times_times_rat @ Z4 @ X2 ) @ Y ) ) )
     => ( ord_less_eq_rat @ X2 @ Y ) ) ).

% field_le_mult_one_interval
thf(fact_2734_mult__less__cancel__right2,axiom,
    ! [A: code_integer,C: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ C ) @ C )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le6747313008572928689nteger @ A @ one_one_Code_integer ) )
        & ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A ) ) ) ) ).

% mult_less_cancel_right2
thf(fact_2735_mult__less__cancel__right2,axiom,
    ! [A: rat,C: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ A @ C ) @ C )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ A @ one_one_rat ) )
        & ( ( ord_less_eq_rat @ C @ zero_zero_rat )
         => ( ord_less_rat @ one_one_rat @ A ) ) ) ) ).

% mult_less_cancel_right2
thf(fact_2736_mult__less__cancel__right2,axiom,
    ! [A: int,C: int] :
      ( ( ord_less_int @ ( times_times_int @ A @ C ) @ C )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ C )
         => ( ord_less_int @ A @ one_one_int ) )
        & ( ( ord_less_eq_int @ C @ zero_zero_int )
         => ( ord_less_int @ one_one_int @ A ) ) ) ) ).

% mult_less_cancel_right2
thf(fact_2737_mult__less__cancel__right1,axiom,
    ! [C: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ C @ ( times_3573771949741848930nteger @ B @ C ) )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ B ) )
        & ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le6747313008572928689nteger @ B @ one_one_Code_integer ) ) ) ) ).

% mult_less_cancel_right1
thf(fact_2738_mult__less__cancel__right1,axiom,
    ! [C: rat,B: rat] :
      ( ( ord_less_rat @ C @ ( times_times_rat @ B @ C ) )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ one_one_rat @ B ) )
        & ( ( ord_less_eq_rat @ C @ zero_zero_rat )
         => ( ord_less_rat @ B @ one_one_rat ) ) ) ) ).

% mult_less_cancel_right1
thf(fact_2739_mult__less__cancel__right1,axiom,
    ! [C: int,B: int] :
      ( ( ord_less_int @ C @ ( times_times_int @ B @ C ) )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ C )
         => ( ord_less_int @ one_one_int @ B ) )
        & ( ( ord_less_eq_int @ C @ zero_zero_int )
         => ( ord_less_int @ B @ one_one_int ) ) ) ) ).

% mult_less_cancel_right1
thf(fact_2740_mult__less__cancel__left2,axiom,
    ! [C: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ C @ A ) @ C )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le6747313008572928689nteger @ A @ one_one_Code_integer ) )
        & ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A ) ) ) ) ).

% mult_less_cancel_left2
thf(fact_2741_mult__less__cancel__left2,axiom,
    ! [C: rat,A: rat] :
      ( ( ord_less_rat @ ( times_times_rat @ C @ A ) @ C )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ A @ one_one_rat ) )
        & ( ( ord_less_eq_rat @ C @ zero_zero_rat )
         => ( ord_less_rat @ one_one_rat @ A ) ) ) ) ).

% mult_less_cancel_left2
thf(fact_2742_mult__less__cancel__left2,axiom,
    ! [C: int,A: int] :
      ( ( ord_less_int @ ( times_times_int @ C @ A ) @ C )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ C )
         => ( ord_less_int @ A @ one_one_int ) )
        & ( ( ord_less_eq_int @ C @ zero_zero_int )
         => ( ord_less_int @ one_one_int @ A ) ) ) ) ).

% mult_less_cancel_left2
thf(fact_2743_mult__less__cancel__left1,axiom,
    ! [C: code_integer,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ C @ ( times_3573771949741848930nteger @ C @ B ) )
      = ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ B ) )
        & ( ( ord_le3102999989581377725nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le6747313008572928689nteger @ B @ one_one_Code_integer ) ) ) ) ).

% mult_less_cancel_left1
thf(fact_2744_mult__less__cancel__left1,axiom,
    ! [C: rat,B: rat] :
      ( ( ord_less_rat @ C @ ( times_times_rat @ C @ B ) )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ one_one_rat @ B ) )
        & ( ( ord_less_eq_rat @ C @ zero_zero_rat )
         => ( ord_less_rat @ B @ one_one_rat ) ) ) ) ).

% mult_less_cancel_left1
thf(fact_2745_mult__less__cancel__left1,axiom,
    ! [C: int,B: int] :
      ( ( ord_less_int @ C @ ( times_times_int @ C @ B ) )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ C )
         => ( ord_less_int @ one_one_int @ B ) )
        & ( ( ord_less_eq_int @ C @ zero_zero_int )
         => ( ord_less_int @ B @ one_one_int ) ) ) ) ).

% mult_less_cancel_left1
thf(fact_2746_mult__le__cancel__right2,axiom,
    ! [A: code_integer,C: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ A @ C ) @ C )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le3102999989581377725nteger @ A @ one_one_Code_integer ) )
        & ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ A ) ) ) ) ).

% mult_le_cancel_right2
thf(fact_2747_mult__le__cancel__right2,axiom,
    ! [A: rat,C: rat] :
      ( ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ C )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ A @ one_one_rat ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_eq_rat @ one_one_rat @ A ) ) ) ) ).

% mult_le_cancel_right2
thf(fact_2748_mult__le__cancel__right2,axiom,
    ! [A: int,C: int] :
      ( ( ord_less_eq_int @ ( times_times_int @ A @ C ) @ C )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
         => ( ord_less_eq_int @ A @ one_one_int ) )
        & ( ( ord_less_int @ C @ zero_zero_int )
         => ( ord_less_eq_int @ one_one_int @ A ) ) ) ) ).

% mult_le_cancel_right2
thf(fact_2749_mult__le__cancel__right1,axiom,
    ! [C: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ C @ ( times_3573771949741848930nteger @ B @ C ) )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ B ) )
        & ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le3102999989581377725nteger @ B @ one_one_Code_integer ) ) ) ) ).

% mult_le_cancel_right1
thf(fact_2750_mult__le__cancel__right1,axiom,
    ! [C: rat,B: rat] :
      ( ( ord_less_eq_rat @ C @ ( times_times_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ one_one_rat @ B ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_eq_rat @ B @ one_one_rat ) ) ) ) ).

% mult_le_cancel_right1
thf(fact_2751_mult__le__cancel__right1,axiom,
    ! [C: int,B: int] :
      ( ( ord_less_eq_int @ C @ ( times_times_int @ B @ C ) )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
         => ( ord_less_eq_int @ one_one_int @ B ) )
        & ( ( ord_less_int @ C @ zero_zero_int )
         => ( ord_less_eq_int @ B @ one_one_int ) ) ) ) ).

% mult_le_cancel_right1
thf(fact_2752_mult__le__cancel__left2,axiom,
    ! [C: code_integer,A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ C @ A ) @ C )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le3102999989581377725nteger @ A @ one_one_Code_integer ) )
        & ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ A ) ) ) ) ).

% mult_le_cancel_left2
thf(fact_2753_mult__le__cancel__left2,axiom,
    ! [C: rat,A: rat] :
      ( ( ord_less_eq_rat @ ( times_times_rat @ C @ A ) @ C )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ A @ one_one_rat ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_eq_rat @ one_one_rat @ A ) ) ) ) ).

% mult_le_cancel_left2
thf(fact_2754_mult__le__cancel__left2,axiom,
    ! [C: int,A: int] :
      ( ( ord_less_eq_int @ ( times_times_int @ C @ A ) @ C )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
         => ( ord_less_eq_int @ A @ one_one_int ) )
        & ( ( ord_less_int @ C @ zero_zero_int )
         => ( ord_less_eq_int @ one_one_int @ A ) ) ) ) ).

% mult_le_cancel_left2
thf(fact_2755_mult__le__cancel__left1,axiom,
    ! [C: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ C @ ( times_3573771949741848930nteger @ C @ B ) )
      = ( ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ C )
         => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ B ) )
        & ( ( ord_le6747313008572928689nteger @ C @ zero_z3403309356797280102nteger )
         => ( ord_le3102999989581377725nteger @ B @ one_one_Code_integer ) ) ) ) ).

% mult_le_cancel_left1
thf(fact_2756_mult__le__cancel__left1,axiom,
    ! [C: rat,B: rat] :
      ( ( ord_less_eq_rat @ C @ ( times_times_rat @ C @ B ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ one_one_rat @ B ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_eq_rat @ B @ one_one_rat ) ) ) ) ).

% mult_le_cancel_left1
thf(fact_2757_mult__le__cancel__left1,axiom,
    ! [C: int,B: int] :
      ( ( ord_less_eq_int @ C @ ( times_times_int @ C @ B ) )
      = ( ( ( ord_less_int @ zero_zero_int @ C )
         => ( ord_less_eq_int @ one_one_int @ B ) )
        & ( ( ord_less_int @ C @ zero_zero_int )
         => ( ord_less_eq_int @ B @ one_one_int ) ) ) ) ).

% mult_le_cancel_left1
thf(fact_2758_convex__bound__le,axiom,
    ! [X2: code_integer,A: code_integer,Y: code_integer,U: code_integer,V: code_integer] :
      ( ( ord_le3102999989581377725nteger @ X2 @ A )
     => ( ( ord_le3102999989581377725nteger @ Y @ A )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ U )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ V )
           => ( ( ( plus_p5714425477246183910nteger @ U @ V )
                = one_one_Code_integer )
             => ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ U @ X2 ) @ ( times_3573771949741848930nteger @ V @ Y ) ) @ A ) ) ) ) ) ) ).

% convex_bound_le
thf(fact_2759_convex__bound__le,axiom,
    ! [X2: rat,A: rat,Y: rat,U: rat,V: rat] :
      ( ( ord_less_eq_rat @ X2 @ A )
     => ( ( ord_less_eq_rat @ Y @ A )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ U )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ V )
           => ( ( ( plus_plus_rat @ U @ V )
                = one_one_rat )
             => ( ord_less_eq_rat @ ( plus_plus_rat @ ( times_times_rat @ U @ X2 ) @ ( times_times_rat @ V @ Y ) ) @ A ) ) ) ) ) ) ).

% convex_bound_le
thf(fact_2760_convex__bound__le,axiom,
    ! [X2: int,A: int,Y: int,U: int,V: int] :
      ( ( ord_less_eq_int @ X2 @ A )
     => ( ( ord_less_eq_int @ Y @ A )
       => ( ( ord_less_eq_int @ zero_zero_int @ U )
         => ( ( ord_less_eq_int @ zero_zero_int @ V )
           => ( ( ( plus_plus_int @ U @ V )
                = one_one_int )
             => ( ord_less_eq_int @ ( plus_plus_int @ ( times_times_int @ U @ X2 ) @ ( times_times_int @ V @ Y ) ) @ A ) ) ) ) ) ) ).

% convex_bound_le
thf(fact_2761_nz__le__conv__less,axiom,
    ! [K: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ord_less_eq_nat @ K @ M )
       => ( ord_less_nat @ ( minus_minus_nat @ K @ ( suc @ zero_zero_nat ) ) @ M ) ) ) ).

% nz_le_conv_less
thf(fact_2762_Suc__diff__eq__diff__pred,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( minus_minus_nat @ ( suc @ M ) @ N )
        = ( minus_minus_nat @ M @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% Suc_diff_eq_diff_pred
thf(fact_2763_Suc__pred_H,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( N
        = ( suc @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% Suc_pred'
thf(fact_2764_frac__add,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ( ord_less_rat @ ( plus_plus_rat @ ( archimedean_frac_rat @ X2 ) @ ( archimedean_frac_rat @ Y ) ) @ one_one_rat )
       => ( ( archimedean_frac_rat @ ( plus_plus_rat @ X2 @ Y ) )
          = ( plus_plus_rat @ ( archimedean_frac_rat @ X2 ) @ ( archimedean_frac_rat @ Y ) ) ) )
      & ( ~ ( ord_less_rat @ ( plus_plus_rat @ ( archimedean_frac_rat @ X2 ) @ ( archimedean_frac_rat @ Y ) ) @ one_one_rat )
       => ( ( archimedean_frac_rat @ ( plus_plus_rat @ X2 @ Y ) )
          = ( minus_minus_rat @ ( plus_plus_rat @ ( archimedean_frac_rat @ X2 ) @ ( archimedean_frac_rat @ Y ) ) @ one_one_rat ) ) ) ) ).

% frac_add
thf(fact_2765_add__eq__if,axiom,
    ( plus_plus_nat
    = ( ^ [M2: nat,N3: nat] : ( if_nat @ ( M2 = zero_zero_nat ) @ N3 @ ( suc @ ( plus_plus_nat @ ( minus_minus_nat @ M2 @ one_one_nat ) @ N3 ) ) ) ) ) ).

% add_eq_if
thf(fact_2766_Suc__n__minus__m__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_nat @ one_one_nat @ M )
       => ( ( suc @ ( minus_minus_nat @ N @ M ) )
          = ( minus_minus_nat @ N @ ( minus_minus_nat @ M @ one_one_nat ) ) ) ) ) ).

% Suc_n_minus_m_eq
thf(fact_2767_foldr__length__aux,axiom,
    ! [L: list_nat,A: nat] :
      ( ( foldr_nat_nat
        @ ^ [X: nat] : suc
        @ L
        @ A )
      = ( plus_plus_nat @ A @ ( size_size_list_nat @ L ) ) ) ).

% foldr_length_aux
thf(fact_2768_foldr__length__aux,axiom,
    ! [L: list_int,A: nat] :
      ( ( foldr_int_nat
        @ ^ [X: int] : suc
        @ L
        @ A )
      = ( plus_plus_nat @ A @ ( size_size_list_int @ L ) ) ) ).

% foldr_length_aux
thf(fact_2769_foldr__length__aux,axiom,
    ! [L: list_o,A: nat] :
      ( ( foldr_o_nat
        @ ^ [X: $o] : suc
        @ L
        @ A )
      = ( plus_plus_nat @ A @ ( size_size_list_o @ L ) ) ) ).

% foldr_length_aux
thf(fact_2770_zmult__zless__mono2__lemma,axiom,
    ! [I: int,J: int,K: nat] :
      ( ( ord_less_int @ I @ J )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_int @ ( times_times_int @ ( semiri1314217659103216013at_int @ K ) @ I ) @ ( times_times_int @ ( semiri1314217659103216013at_int @ K ) @ J ) ) ) ) ).

% zmult_zless_mono2_lemma
thf(fact_2771_power__int__add,axiom,
    ! [X2: rat,M: int,N: int] :
      ( ( ( X2 != zero_zero_rat )
        | ( ( plus_plus_int @ M @ N )
         != zero_zero_int ) )
     => ( ( power_int_rat @ X2 @ ( plus_plus_int @ M @ N ) )
        = ( times_times_rat @ ( power_int_rat @ X2 @ M ) @ ( power_int_rat @ X2 @ N ) ) ) ) ).

% power_int_add
thf(fact_2772_unique__quotient__lemma__neg,axiom,
    ! [B: int,Q5: int,R4: int,Q2: int,R: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ ( times_times_int @ B @ Q5 ) @ R4 ) @ ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R ) )
     => ( ( ord_less_eq_int @ R @ zero_zero_int )
       => ( ( ord_less_int @ B @ R )
         => ( ( ord_less_int @ B @ R4 )
           => ( ord_less_eq_int @ Q2 @ Q5 ) ) ) ) ) ).

% unique_quotient_lemma_neg
thf(fact_2773_unique__quotient__lemma,axiom,
    ! [B: int,Q5: int,R4: int,Q2: int,R: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ ( times_times_int @ B @ Q5 ) @ R4 ) @ ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ R4 )
       => ( ( ord_less_int @ R4 @ B )
         => ( ( ord_less_int @ R @ B )
           => ( ord_less_eq_int @ Q5 @ Q2 ) ) ) ) ) ).

% unique_quotient_lemma
thf(fact_2774_zdiv__mono2__neg__lemma,axiom,
    ! [B: int,Q2: int,R: int,B5: int,Q5: int,R4: int] :
      ( ( ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R )
        = ( plus_plus_int @ ( times_times_int @ B5 @ Q5 ) @ R4 ) )
     => ( ( ord_less_int @ ( plus_plus_int @ ( times_times_int @ B5 @ Q5 ) @ R4 ) @ zero_zero_int )
       => ( ( ord_less_int @ R @ B )
         => ( ( ord_less_eq_int @ zero_zero_int @ R4 )
           => ( ( ord_less_int @ zero_zero_int @ B5 )
             => ( ( ord_less_eq_int @ B5 @ B )
               => ( ord_less_eq_int @ Q5 @ Q2 ) ) ) ) ) ) ) ).

% zdiv_mono2_neg_lemma
thf(fact_2775_zdiv__mono2__lemma,axiom,
    ! [B: int,Q2: int,R: int,B5: int,Q5: int,R4: int] :
      ( ( ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R )
        = ( plus_plus_int @ ( times_times_int @ B5 @ Q5 ) @ R4 ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ ( plus_plus_int @ ( times_times_int @ B5 @ Q5 ) @ R4 ) )
       => ( ( ord_less_int @ R4 @ B5 )
         => ( ( ord_less_eq_int @ zero_zero_int @ R )
           => ( ( ord_less_int @ zero_zero_int @ B5 )
             => ( ( ord_less_eq_int @ B5 @ B )
               => ( ord_less_eq_int @ Q2 @ Q5 ) ) ) ) ) ) ) ).

% zdiv_mono2_lemma
thf(fact_2776_q__pos__lemma,axiom,
    ! [B5: int,Q5: int,R4: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( plus_plus_int @ ( times_times_int @ B5 @ Q5 ) @ R4 ) )
     => ( ( ord_less_int @ R4 @ B5 )
       => ( ( ord_less_int @ zero_zero_int @ B5 )
         => ( ord_less_eq_int @ zero_zero_int @ Q5 ) ) ) ) ).

% q_pos_lemma
thf(fact_2777_incr__mult__lemma,axiom,
    ! [D: int,P: int > $o,K: int] :
      ( ( ord_less_int @ zero_zero_int @ D )
     => ( ! [X3: int] :
            ( ( P @ X3 )
           => ( P @ ( plus_plus_int @ X3 @ D ) ) )
       => ( ( ord_less_eq_int @ zero_zero_int @ K )
         => ! [X4: int] :
              ( ( P @ X4 )
             => ( P @ ( plus_plus_int @ X4 @ ( times_times_int @ K @ D ) ) ) ) ) ) ) ).

% incr_mult_lemma
thf(fact_2778_ceiling__diff__floor__le__1,axiom,
    ! [X2: rat] : ( ord_less_eq_int @ ( minus_minus_int @ ( archim2889992004027027881ng_rat @ X2 ) @ ( archim3151403230148437115or_rat @ X2 ) ) @ one_one_int ) ).

% ceiling_diff_floor_le_1
thf(fact_2779_convex__bound__lt,axiom,
    ! [X2: code_integer,A: code_integer,Y: code_integer,U: code_integer,V: code_integer] :
      ( ( ord_le6747313008572928689nteger @ X2 @ A )
     => ( ( ord_le6747313008572928689nteger @ Y @ A )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ U )
         => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ V )
           => ( ( ( plus_p5714425477246183910nteger @ U @ V )
                = one_one_Code_integer )
             => ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ U @ X2 ) @ ( times_3573771949741848930nteger @ V @ Y ) ) @ A ) ) ) ) ) ) ).

% convex_bound_lt
thf(fact_2780_convex__bound__lt,axiom,
    ! [X2: rat,A: rat,Y: rat,U: rat,V: rat] :
      ( ( ord_less_rat @ X2 @ A )
     => ( ( ord_less_rat @ Y @ A )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ U )
         => ( ( ord_less_eq_rat @ zero_zero_rat @ V )
           => ( ( ( plus_plus_rat @ U @ V )
                = one_one_rat )
             => ( ord_less_rat @ ( plus_plus_rat @ ( times_times_rat @ U @ X2 ) @ ( times_times_rat @ V @ Y ) ) @ A ) ) ) ) ) ) ).

% convex_bound_lt
thf(fact_2781_convex__bound__lt,axiom,
    ! [X2: int,A: int,Y: int,U: int,V: int] :
      ( ( ord_less_int @ X2 @ A )
     => ( ( ord_less_int @ Y @ A )
       => ( ( ord_less_eq_int @ zero_zero_int @ U )
         => ( ( ord_less_eq_int @ zero_zero_int @ V )
           => ( ( ( plus_plus_int @ U @ V )
                = one_one_int )
             => ( ord_less_int @ ( plus_plus_int @ ( times_times_int @ U @ X2 ) @ ( times_times_int @ V @ Y ) ) @ A ) ) ) ) ) ) ).

% convex_bound_lt
thf(fact_2782_ceiling__correct,axiom,
    ! [X2: rat] :
      ( ( ord_less_rat @ ( minus_minus_rat @ ( ring_1_of_int_rat @ ( archim2889992004027027881ng_rat @ X2 ) ) @ one_one_rat ) @ X2 )
      & ( ord_less_eq_rat @ X2 @ ( ring_1_of_int_rat @ ( archim2889992004027027881ng_rat @ X2 ) ) ) ) ).

% ceiling_correct
thf(fact_2783_ceiling__unique,axiom,
    ! [Z2: int,X2: rat] :
      ( ( ord_less_rat @ ( minus_minus_rat @ ( ring_1_of_int_rat @ Z2 ) @ one_one_rat ) @ X2 )
     => ( ( ord_less_eq_rat @ X2 @ ( ring_1_of_int_rat @ Z2 ) )
       => ( ( archim2889992004027027881ng_rat @ X2 )
          = Z2 ) ) ) ).

% ceiling_unique
thf(fact_2784_ceiling__eq__iff,axiom,
    ! [X2: rat,A: int] :
      ( ( ( archim2889992004027027881ng_rat @ X2 )
        = A )
      = ( ( ord_less_rat @ ( minus_minus_rat @ ( ring_1_of_int_rat @ A ) @ one_one_rat ) @ X2 )
        & ( ord_less_eq_rat @ X2 @ ( ring_1_of_int_rat @ A ) ) ) ) ).

% ceiling_eq_iff
thf(fact_2785_ceiling__split,axiom,
    ! [P: int > $o,T: rat] :
      ( ( P @ ( archim2889992004027027881ng_rat @ T ) )
      = ( ! [I2: int] :
            ( ( ( ord_less_rat @ ( minus_minus_rat @ ( ring_1_of_int_rat @ I2 ) @ one_one_rat ) @ T )
              & ( ord_less_eq_rat @ T @ ( ring_1_of_int_rat @ I2 ) ) )
           => ( P @ I2 ) ) ) ) ).

% ceiling_split
thf(fact_2786_ceiling__less__iff,axiom,
    ! [X2: rat,Z2: int] :
      ( ( ord_less_int @ ( archim2889992004027027881ng_rat @ X2 ) @ Z2 )
      = ( ord_less_eq_rat @ X2 @ ( minus_minus_rat @ ( ring_1_of_int_rat @ Z2 ) @ one_one_rat ) ) ) ).

% ceiling_less_iff
thf(fact_2787_nat__mult__le__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% nat_mult_le_cancel_disj
thf(fact_2788_nat__mult__less__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
        & ( ord_less_nat @ M @ N ) ) ) ).

% nat_mult_less_cancel_disj
thf(fact_2789_sum__squares__gt__zero__iff,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ X2 @ X2 ) @ ( times_3573771949741848930nteger @ Y @ Y ) ) )
      = ( ( X2 != zero_z3403309356797280102nteger )
        | ( Y != zero_z3403309356797280102nteger ) ) ) ).

% sum_squares_gt_zero_iff
thf(fact_2790_sum__squares__gt__zero__iff,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( plus_plus_rat @ ( times_times_rat @ X2 @ X2 ) @ ( times_times_rat @ Y @ Y ) ) )
      = ( ( X2 != zero_zero_rat )
        | ( Y != zero_zero_rat ) ) ) ).

% sum_squares_gt_zero_iff
thf(fact_2791_sum__squares__gt__zero__iff,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ ( times_times_int @ X2 @ X2 ) @ ( times_times_int @ Y @ Y ) ) )
      = ( ( X2 != zero_zero_int )
        | ( Y != zero_zero_int ) ) ) ).

% sum_squares_gt_zero_iff
thf(fact_2792_sum__squares__le__zero__iff,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ X2 @ X2 ) @ ( times_3573771949741848930nteger @ Y @ Y ) ) @ zero_z3403309356797280102nteger )
      = ( ( X2 = zero_z3403309356797280102nteger )
        & ( Y = zero_z3403309356797280102nteger ) ) ) ).

% sum_squares_le_zero_iff
thf(fact_2793_sum__squares__le__zero__iff,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ ( plus_plus_rat @ ( times_times_rat @ X2 @ X2 ) @ ( times_times_rat @ Y @ Y ) ) @ zero_zero_rat )
      = ( ( X2 = zero_zero_rat )
        & ( Y = zero_zero_rat ) ) ) ).

% sum_squares_le_zero_iff
thf(fact_2794_sum__squares__le__zero__iff,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ ( times_times_int @ X2 @ X2 ) @ ( times_times_int @ Y @ Y ) ) @ zero_zero_int )
      = ( ( X2 = zero_zero_int )
        & ( Y = zero_zero_int ) ) ) ).

% sum_squares_le_zero_iff
thf(fact_2795_mult__le__cancel__iff2,axiom,
    ! [Z2: code_integer,X2: code_integer,Y: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ Z2 )
     => ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ Z2 @ X2 ) @ ( times_3573771949741848930nteger @ Z2 @ Y ) )
        = ( ord_le3102999989581377725nteger @ X2 @ Y ) ) ) ).

% mult_le_cancel_iff2
thf(fact_2796_mult__le__cancel__iff2,axiom,
    ! [Z2: rat,X2: rat,Y: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Z2 )
     => ( ( ord_less_eq_rat @ ( times_times_rat @ Z2 @ X2 ) @ ( times_times_rat @ Z2 @ Y ) )
        = ( ord_less_eq_rat @ X2 @ Y ) ) ) ).

% mult_le_cancel_iff2
thf(fact_2797_mult__le__cancel__iff2,axiom,
    ! [Z2: int,X2: int,Y: int] :
      ( ( ord_less_int @ zero_zero_int @ Z2 )
     => ( ( ord_less_eq_int @ ( times_times_int @ Z2 @ X2 ) @ ( times_times_int @ Z2 @ Y ) )
        = ( ord_less_eq_int @ X2 @ Y ) ) ) ).

% mult_le_cancel_iff2
thf(fact_2798_mult__le__cancel__iff1,axiom,
    ! [Z2: code_integer,X2: code_integer,Y: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ Z2 )
     => ( ( ord_le3102999989581377725nteger @ ( times_3573771949741848930nteger @ X2 @ Z2 ) @ ( times_3573771949741848930nteger @ Y @ Z2 ) )
        = ( ord_le3102999989581377725nteger @ X2 @ Y ) ) ) ).

% mult_le_cancel_iff1
thf(fact_2799_mult__le__cancel__iff1,axiom,
    ! [Z2: rat,X2: rat,Y: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Z2 )
     => ( ( ord_less_eq_rat @ ( times_times_rat @ X2 @ Z2 ) @ ( times_times_rat @ Y @ Z2 ) )
        = ( ord_less_eq_rat @ X2 @ Y ) ) ) ).

% mult_le_cancel_iff1
thf(fact_2800_mult__le__cancel__iff1,axiom,
    ! [Z2: int,X2: int,Y: int] :
      ( ( ord_less_int @ zero_zero_int @ Z2 )
     => ( ( ord_less_eq_int @ ( times_times_int @ X2 @ Z2 ) @ ( times_times_int @ Y @ Z2 ) )
        = ( ord_less_eq_int @ X2 @ Y ) ) ) ).

% mult_le_cancel_iff1
thf(fact_2801_nat__less__add__iff2,axiom,
    ! [I: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I ) @ U ) @ N ) ) ) ) ).

% nat_less_add_iff2
thf(fact_2802_int__distrib_I3_J,axiom,
    ! [Z1: int,Z22: int,W2: int] :
      ( ( times_times_int @ ( minus_minus_int @ Z1 @ Z22 ) @ W2 )
      = ( minus_minus_int @ ( times_times_int @ Z1 @ W2 ) @ ( times_times_int @ Z22 @ W2 ) ) ) ).

% int_distrib(3)
thf(fact_2803_int__distrib_I4_J,axiom,
    ! [W2: int,Z1: int,Z22: int] :
      ( ( times_times_int @ W2 @ ( minus_minus_int @ Z1 @ Z22 ) )
      = ( minus_minus_int @ ( times_times_int @ W2 @ Z1 ) @ ( times_times_int @ W2 @ Z22 ) ) ) ).

% int_distrib(4)
thf(fact_2804_diff__mult__distrib2,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( times_times_nat @ K @ ( minus_minus_nat @ M @ N ) )
      = ( minus_minus_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) ) ) ).

% diff_mult_distrib2
thf(fact_2805_diff__mult__distrib,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( times_times_nat @ ( minus_minus_nat @ M @ N ) @ K )
      = ( minus_minus_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) ) ) ).

% diff_mult_distrib
thf(fact_2806_diff__commute,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J ) @ K )
      = ( minus_minus_nat @ ( minus_minus_nat @ I @ K ) @ J ) ) ).

% diff_commute
thf(fact_2807_nat__mult__eq__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( times_times_nat @ K @ M )
        = ( times_times_nat @ K @ N ) )
      = ( ( K = zero_zero_nat )
        | ( M = N ) ) ) ).

% nat_mult_eq_cancel_disj
thf(fact_2808_left__add__mult__distrib,axiom,
    ! [I: nat,U: nat,J: nat,K: nat] :
      ( ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ K ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( plus_plus_nat @ I @ J ) @ U ) @ K ) ) ).

% left_add_mult_distrib
thf(fact_2809_nat__mult__less__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ord_less_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( ord_less_nat @ M @ N ) ) ) ).

% nat_mult_less_cancel1
thf(fact_2810_nat__mult__eq__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ( times_times_nat @ K @ M )
          = ( times_times_nat @ K @ N ) )
        = ( M = N ) ) ) ).

% nat_mult_eq_cancel1
thf(fact_2811_nat__diff__add__eq2,axiom,
    ! [I: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( minus_minus_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I ) @ U ) @ N ) ) ) ) ).

% nat_diff_add_eq2
thf(fact_2812_nat__diff__add__eq1,axiom,
    ! [J: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J ) @ U ) @ M ) @ N ) ) ) ).

% nat_diff_add_eq1
thf(fact_2813_nat__le__add__iff2,axiom,
    ! [I: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_eq_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I ) @ U ) @ N ) ) ) ) ).

% nat_le_add_iff2
thf(fact_2814_nat__le__add__iff1,axiom,
    ! [J: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I )
     => ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J ) @ U ) @ M ) @ N ) ) ) ).

% nat_le_add_iff1
thf(fact_2815_nat__eq__add__iff2,axiom,
    ! [I: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M )
          = ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( M
          = ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I ) @ U ) @ N ) ) ) ) ).

% nat_eq_add_iff2
thf(fact_2816_nat__eq__add__iff1,axiom,
    ! [J: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I )
     => ( ( ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M )
          = ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J ) @ U ) @ M )
          = N ) ) ) ).

% nat_eq_add_iff1
thf(fact_2817_mult__less__iff1,axiom,
    ! [Z2: code_integer,X2: code_integer,Y: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ Z2 )
     => ( ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ X2 @ Z2 ) @ ( times_3573771949741848930nteger @ Y @ Z2 ) )
        = ( ord_le6747313008572928689nteger @ X2 @ Y ) ) ) ).

% mult_less_iff1
thf(fact_2818_mult__less__iff1,axiom,
    ! [Z2: rat,X2: rat,Y: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Z2 )
     => ( ( ord_less_rat @ ( times_times_rat @ X2 @ Z2 ) @ ( times_times_rat @ Y @ Z2 ) )
        = ( ord_less_rat @ X2 @ Y ) ) ) ).

% mult_less_iff1
thf(fact_2819_mult__less__iff1,axiom,
    ! [Z2: int,X2: int,Y: int] :
      ( ( ord_less_int @ zero_zero_int @ Z2 )
     => ( ( ord_less_int @ ( times_times_int @ X2 @ Z2 ) @ ( times_times_int @ Y @ Z2 ) )
        = ( ord_less_int @ X2 @ Y ) ) ) ).

% mult_less_iff1
thf(fact_2820_sum__squares__eq__zero__iff,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ X2 @ X2 ) @ ( times_3573771949741848930nteger @ Y @ Y ) )
        = zero_z3403309356797280102nteger )
      = ( ( X2 = zero_z3403309356797280102nteger )
        & ( Y = zero_z3403309356797280102nteger ) ) ) ).

% sum_squares_eq_zero_iff
thf(fact_2821_sum__squares__eq__zero__iff,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ( plus_plus_rat @ ( times_times_rat @ X2 @ X2 ) @ ( times_times_rat @ Y @ Y ) )
        = zero_zero_rat )
      = ( ( X2 = zero_zero_rat )
        & ( Y = zero_zero_rat ) ) ) ).

% sum_squares_eq_zero_iff
thf(fact_2822_sum__squares__eq__zero__iff,axiom,
    ! [X2: int,Y: int] :
      ( ( ( plus_plus_int @ ( times_times_int @ X2 @ X2 ) @ ( times_times_int @ Y @ Y ) )
        = zero_zero_int )
      = ( ( X2 = zero_zero_int )
        & ( Y = zero_zero_int ) ) ) ).

% sum_squares_eq_zero_iff
thf(fact_2823_nat__mult__le__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ord_less_eq_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( ord_less_eq_nat @ M @ N ) ) ) ).

% nat_mult_le_cancel1
thf(fact_2824_nat__less__add__iff1,axiom,
    ! [J: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I )
     => ( ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J ) @ U ) @ M ) @ N ) ) ) ).

% nat_less_add_iff1
thf(fact_2825_nat0__intermed__int__val,axiom,
    ! [N: nat,F: nat > int,K: int] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ N )
         => ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( F @ ( plus_plus_nat @ I3 @ one_one_nat ) ) @ ( F @ I3 ) ) ) @ one_one_int ) )
     => ( ( ord_less_eq_int @ ( F @ zero_zero_nat ) @ K )
       => ( ( ord_less_eq_int @ K @ ( F @ N ) )
         => ? [I3: nat] :
              ( ( ord_less_eq_nat @ I3 @ N )
              & ( ( F @ I3 )
                = K ) ) ) ) ) ).

% nat0_intermed_int_val
thf(fact_2826_slice__len,axiom,
    ! [From: nat,To: nat,Xs: list_nat] :
      ( ( ord_less_eq_nat @ From @ To )
     => ( ( ord_less_eq_nat @ To @ ( size_size_list_nat @ Xs ) )
       => ( ( size_size_list_nat @ ( slice_nat @ From @ To @ Xs ) )
          = ( minus_minus_nat @ To @ From ) ) ) ) ).

% slice_len
thf(fact_2827_slice__len,axiom,
    ! [From: nat,To: nat,Xs: list_int] :
      ( ( ord_less_eq_nat @ From @ To )
     => ( ( ord_less_eq_nat @ To @ ( size_size_list_int @ Xs ) )
       => ( ( size_size_list_int @ ( slice_int @ From @ To @ Xs ) )
          = ( minus_minus_nat @ To @ From ) ) ) ) ).

% slice_len
thf(fact_2828_slice__len,axiom,
    ! [From: nat,To: nat,Xs: list_o] :
      ( ( ord_less_eq_nat @ From @ To )
     => ( ( ord_less_eq_nat @ To @ ( size_size_list_o @ Xs ) )
       => ( ( size_size_list_o @ ( slice_o @ From @ To @ Xs ) )
          = ( minus_minus_nat @ To @ From ) ) ) ) ).

% slice_len
thf(fact_2829_ceiling__divide__lower,axiom,
    ! [Q2: rat,P3: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Q2 )
     => ( ord_less_rat @ ( times_times_rat @ ( minus_minus_rat @ ( ring_1_of_int_rat @ ( archim2889992004027027881ng_rat @ ( divide_divide_rat @ P3 @ Q2 ) ) ) @ one_one_rat ) @ Q2 ) @ P3 ) ) ).

% ceiling_divide_lower
thf(fact_2830_floor__divide__upper,axiom,
    ! [Q2: rat,P3: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Q2 )
     => ( ord_less_rat @ P3 @ ( times_times_rat @ ( plus_plus_rat @ ( ring_1_of_int_rat @ ( archim3151403230148437115or_rat @ ( divide_divide_rat @ P3 @ Q2 ) ) ) @ one_one_rat ) @ Q2 ) ) ) ).

% floor_divide_upper
thf(fact_2831_nat__ivt__aux,axiom,
    ! [N: nat,F: nat > int,K: int] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ N )
         => ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( F @ ( suc @ I3 ) ) @ ( F @ I3 ) ) ) @ one_one_int ) )
     => ( ( ord_less_eq_int @ ( F @ zero_zero_nat ) @ K )
       => ( ( ord_less_eq_int @ K @ ( F @ N ) )
         => ? [I3: nat] :
              ( ( ord_less_eq_nat @ I3 @ N )
              & ( ( F @ I3 )
                = K ) ) ) ) ) ).

% nat_ivt_aux
thf(fact_2832_mult__ceiling__le__Ints,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( member_rat @ A @ ring_1_Ints_rat )
       => ( ord_le3102999989581377725nteger @ ( ring_18347121197199848620nteger @ ( archim2889992004027027881ng_rat @ ( times_times_rat @ A @ B ) ) ) @ ( ring_18347121197199848620nteger @ ( times_times_int @ ( archim2889992004027027881ng_rat @ A ) @ ( archim2889992004027027881ng_rat @ B ) ) ) ) ) ) ).

% mult_ceiling_le_Ints
thf(fact_2833_mult__ceiling__le__Ints,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( member_rat @ A @ ring_1_Ints_rat )
       => ( ord_less_eq_rat @ ( ring_1_of_int_rat @ ( archim2889992004027027881ng_rat @ ( times_times_rat @ A @ B ) ) ) @ ( ring_1_of_int_rat @ ( times_times_int @ ( archim2889992004027027881ng_rat @ A ) @ ( archim2889992004027027881ng_rat @ B ) ) ) ) ) ) ).

% mult_ceiling_le_Ints
thf(fact_2834_mult__ceiling__le__Ints,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( member_rat @ A @ ring_1_Ints_rat )
       => ( ord_less_eq_int @ ( ring_1_of_int_int @ ( archim2889992004027027881ng_rat @ ( times_times_rat @ A @ B ) ) ) @ ( ring_1_of_int_int @ ( times_times_int @ ( archim2889992004027027881ng_rat @ A ) @ ( archim2889992004027027881ng_rat @ B ) ) ) ) ) ) ).

% mult_ceiling_le_Ints
thf(fact_2835_le__mult__floor__Ints,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( member_rat @ A @ ring_1_Ints_rat )
       => ( ord_le3102999989581377725nteger @ ( ring_18347121197199848620nteger @ ( times_times_int @ ( archim3151403230148437115or_rat @ A ) @ ( archim3151403230148437115or_rat @ B ) ) ) @ ( ring_18347121197199848620nteger @ ( archim3151403230148437115or_rat @ ( times_times_rat @ A @ B ) ) ) ) ) ) ).

% le_mult_floor_Ints
thf(fact_2836_le__mult__floor__Ints,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( member_rat @ A @ ring_1_Ints_rat )
       => ( ord_less_eq_rat @ ( ring_1_of_int_rat @ ( times_times_int @ ( archim3151403230148437115or_rat @ A ) @ ( archim3151403230148437115or_rat @ B ) ) ) @ ( ring_1_of_int_rat @ ( archim3151403230148437115or_rat @ ( times_times_rat @ A @ B ) ) ) ) ) ) ).

% le_mult_floor_Ints
thf(fact_2837_le__mult__floor__Ints,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( member_rat @ A @ ring_1_Ints_rat )
       => ( ord_less_eq_int @ ( ring_1_of_int_int @ ( times_times_int @ ( archim3151403230148437115or_rat @ A ) @ ( archim3151403230148437115or_rat @ B ) ) ) @ ( ring_1_of_int_int @ ( archim3151403230148437115or_rat @ ( times_times_rat @ A @ B ) ) ) ) ) ) ).

% le_mult_floor_Ints
thf(fact_2838_frac__unique__iff,axiom,
    ! [X2: rat,A: rat] :
      ( ( ( archimedean_frac_rat @ X2 )
        = A )
      = ( ( member_rat @ ( minus_minus_rat @ X2 @ A ) @ ring_1_Ints_rat )
        & ( ord_less_eq_rat @ zero_zero_rat @ A )
        & ( ord_less_rat @ A @ one_one_rat ) ) ) ).

% frac_unique_iff
thf(fact_2839_abs__idempotent,axiom,
    ! [A: int] :
      ( ( abs_abs_int @ ( abs_abs_int @ A ) )
      = ( abs_abs_int @ A ) ) ).

% abs_idempotent
thf(fact_2840_abs__idempotent,axiom,
    ! [A: code_integer] :
      ( ( abs_abs_Code_integer @ ( abs_abs_Code_integer @ A ) )
      = ( abs_abs_Code_integer @ A ) ) ).

% abs_idempotent
thf(fact_2841_abs__idempotent,axiom,
    ! [A: rat] :
      ( ( abs_abs_rat @ ( abs_abs_rat @ A ) )
      = ( abs_abs_rat @ A ) ) ).

% abs_idempotent
thf(fact_2842_divide__eq__0__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ( divide_divide_rat @ A @ B )
        = zero_zero_rat )
      = ( ( A = zero_zero_rat )
        | ( B = zero_zero_rat ) ) ) ).

% divide_eq_0_iff
thf(fact_2843_divide__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ( divide_divide_rat @ C @ A )
        = ( divide_divide_rat @ C @ B ) )
      = ( ( C = zero_zero_rat )
        | ( A = B ) ) ) ).

% divide_cancel_left
thf(fact_2844_divide__cancel__right,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ( divide_divide_rat @ A @ C )
        = ( divide_divide_rat @ B @ C ) )
      = ( ( C = zero_zero_rat )
        | ( A = B ) ) ) ).

% divide_cancel_right
thf(fact_2845_division__ring__divide__zero,axiom,
    ! [A: rat] :
      ( ( divide_divide_rat @ A @ zero_zero_rat )
      = zero_zero_rat ) ).

% division_ring_divide_zero
thf(fact_2846_div__0,axiom,
    ! [A: nat] :
      ( ( divide_divide_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% div_0
thf(fact_2847_div__0,axiom,
    ! [A: int] :
      ( ( divide_divide_int @ zero_zero_int @ A )
      = zero_zero_int ) ).

% div_0
thf(fact_2848_div__0,axiom,
    ! [A: code_integer] :
      ( ( divide6298287555418463151nteger @ zero_z3403309356797280102nteger @ A )
      = zero_z3403309356797280102nteger ) ).

% div_0
thf(fact_2849_div__0,axiom,
    ! [A: rat] :
      ( ( divide_divide_rat @ zero_zero_rat @ A )
      = zero_zero_rat ) ).

% div_0
thf(fact_2850_div__0,axiom,
    ! [A: code_natural] :
      ( ( divide5121882707175180666atural @ zero_z2226904508553997617atural @ A )
      = zero_z2226904508553997617atural ) ).

% div_0
thf(fact_2851_div__by__0,axiom,
    ! [A: nat] :
      ( ( divide_divide_nat @ A @ zero_zero_nat )
      = zero_zero_nat ) ).

% div_by_0
thf(fact_2852_div__by__0,axiom,
    ! [A: int] :
      ( ( divide_divide_int @ A @ zero_zero_int )
      = zero_zero_int ) ).

% div_by_0
thf(fact_2853_div__by__0,axiom,
    ! [A: code_integer] :
      ( ( divide6298287555418463151nteger @ A @ zero_z3403309356797280102nteger )
      = zero_z3403309356797280102nteger ) ).

% div_by_0
thf(fact_2854_div__by__0,axiom,
    ! [A: rat] :
      ( ( divide_divide_rat @ A @ zero_zero_rat )
      = zero_zero_rat ) ).

% div_by_0
thf(fact_2855_div__by__0,axiom,
    ! [A: code_natural] :
      ( ( divide5121882707175180666atural @ A @ zero_z2226904508553997617atural )
      = zero_z2226904508553997617atural ) ).

% div_by_0
thf(fact_2856_div__by__1,axiom,
    ! [A: nat] :
      ( ( divide_divide_nat @ A @ one_one_nat )
      = A ) ).

% div_by_1
thf(fact_2857_div__by__1,axiom,
    ! [A: int] :
      ( ( divide_divide_int @ A @ one_one_int )
      = A ) ).

% div_by_1
thf(fact_2858_div__by__1,axiom,
    ! [A: code_integer] :
      ( ( divide6298287555418463151nteger @ A @ one_one_Code_integer )
      = A ) ).

% div_by_1
thf(fact_2859_div__by__1,axiom,
    ! [A: rat] :
      ( ( divide_divide_rat @ A @ one_one_rat )
      = A ) ).

% div_by_1
thf(fact_2860_div__by__1,axiom,
    ! [A: code_natural] :
      ( ( divide5121882707175180666atural @ A @ one_one_Code_natural )
      = A ) ).

% div_by_1
thf(fact_2861_abs__0__eq,axiom,
    ! [A: int] :
      ( ( zero_zero_int
        = ( abs_abs_int @ A ) )
      = ( A = zero_zero_int ) ) ).

% abs_0_eq
thf(fact_2862_abs__0__eq,axiom,
    ! [A: code_integer] :
      ( ( zero_z3403309356797280102nteger
        = ( abs_abs_Code_integer @ A ) )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% abs_0_eq
thf(fact_2863_abs__0__eq,axiom,
    ! [A: rat] :
      ( ( zero_zero_rat
        = ( abs_abs_rat @ A ) )
      = ( A = zero_zero_rat ) ) ).

% abs_0_eq
thf(fact_2864_abs__eq__0,axiom,
    ! [A: int] :
      ( ( ( abs_abs_int @ A )
        = zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% abs_eq_0
thf(fact_2865_abs__eq__0,axiom,
    ! [A: code_integer] :
      ( ( ( abs_abs_Code_integer @ A )
        = zero_z3403309356797280102nteger )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% abs_eq_0
thf(fact_2866_abs__eq__0,axiom,
    ! [A: rat] :
      ( ( ( abs_abs_rat @ A )
        = zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% abs_eq_0
thf(fact_2867_abs__zero,axiom,
    ( ( abs_abs_int @ zero_zero_int )
    = zero_zero_int ) ).

% abs_zero
thf(fact_2868_abs__zero,axiom,
    ( ( abs_abs_Code_integer @ zero_z3403309356797280102nteger )
    = zero_z3403309356797280102nteger ) ).

% abs_zero
thf(fact_2869_abs__zero,axiom,
    ( ( abs_abs_rat @ zero_zero_rat )
    = zero_zero_rat ) ).

% abs_zero
thf(fact_2870_abs__0,axiom,
    ( ( abs_abs_int @ zero_zero_int )
    = zero_zero_int ) ).

% abs_0
thf(fact_2871_abs__0,axiom,
    ( ( abs_abs_Code_integer @ zero_z3403309356797280102nteger )
    = zero_z3403309356797280102nteger ) ).

% abs_0
thf(fact_2872_abs__0,axiom,
    ( ( abs_abs_rat @ zero_zero_rat )
    = zero_zero_rat ) ).

% abs_0
thf(fact_2873_abs__add__abs,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( abs_abs_Code_integer @ ( plus_p5714425477246183910nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) )
      = ( plus_p5714425477246183910nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) ) ).

% abs_add_abs
thf(fact_2874_abs__add__abs,axiom,
    ! [A: rat,B: rat] :
      ( ( abs_abs_rat @ ( plus_plus_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) )
      = ( plus_plus_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) ) ).

% abs_add_abs
thf(fact_2875_abs__add__abs,axiom,
    ! [A: int,B: int] :
      ( ( abs_abs_int @ ( plus_plus_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) )
      = ( plus_plus_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) ) ).

% abs_add_abs
thf(fact_2876_abs__1,axiom,
    ( ( abs_abs_int @ one_one_int )
    = one_one_int ) ).

% abs_1
thf(fact_2877_abs__1,axiom,
    ( ( abs_abs_Code_integer @ one_one_Code_integer )
    = one_one_Code_integer ) ).

% abs_1
thf(fact_2878_abs__1,axiom,
    ( ( abs_abs_rat @ one_one_rat )
    = one_one_rat ) ).

% abs_1
thf(fact_2879_nat__mult__div__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( K = zero_zero_nat )
       => ( ( divide_divide_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
          = zero_zero_nat ) )
      & ( ( K != zero_zero_nat )
       => ( ( divide_divide_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
          = ( divide_divide_nat @ M @ N ) ) ) ) ).

% nat_mult_div_cancel_disj
thf(fact_2880_abs__minus__cancel,axiom,
    ! [A: int] :
      ( ( abs_abs_int @ ( uminus_uminus_int @ A ) )
      = ( abs_abs_int @ A ) ) ).

% abs_minus_cancel
thf(fact_2881_abs__minus__cancel,axiom,
    ! [A: code_integer] :
      ( ( abs_abs_Code_integer @ ( uminus1351360451143612070nteger @ A ) )
      = ( abs_abs_Code_integer @ A ) ) ).

% abs_minus_cancel
thf(fact_2882_abs__minus__cancel,axiom,
    ! [A: rat] :
      ( ( abs_abs_rat @ ( uminus_uminus_rat @ A ) )
      = ( abs_abs_rat @ A ) ) ).

% abs_minus_cancel
thf(fact_2883_abs__of__nat,axiom,
    ! [N: nat] :
      ( ( abs_abs_int @ ( semiri1314217659103216013at_int @ N ) )
      = ( semiri1314217659103216013at_int @ N ) ) ).

% abs_of_nat
thf(fact_2884_abs__of__nat,axiom,
    ! [N: nat] :
      ( ( abs_abs_Code_integer @ ( semiri4939895301339042750nteger @ N ) )
      = ( semiri4939895301339042750nteger @ N ) ) ).

% abs_of_nat
thf(fact_2885_abs__of__nat,axiom,
    ! [N: nat] :
      ( ( abs_abs_rat @ ( semiri681578069525770553at_rat @ N ) )
      = ( semiri681578069525770553at_rat @ N ) ) ).

% abs_of_nat
thf(fact_2886_slice__eq__bounds__empty,axiom,
    ! [I: nat,Xs: list_int] :
      ( ( slice_int @ I @ I @ Xs )
      = nil_int ) ).

% slice_eq_bounds_empty
thf(fact_2887_slice__eq__bounds__empty,axiom,
    ! [I: nat,Xs: list_nat] :
      ( ( slice_nat @ I @ I @ Xs )
      = nil_nat ) ).

% slice_eq_bounds_empty
thf(fact_2888_slice__eq__bounds__empty,axiom,
    ! [I: nat,Xs: list_char] :
      ( ( slice_char @ I @ I @ Xs )
      = nil_char ) ).

% slice_eq_bounds_empty
thf(fact_2889_slice__Nil,axiom,
    ! [Begin: nat,End: nat] :
      ( ( slice_int @ Begin @ End @ nil_int )
      = nil_int ) ).

% slice_Nil
thf(fact_2890_slice__Nil,axiom,
    ! [Begin: nat,End: nat] :
      ( ( slice_nat @ Begin @ End @ nil_nat )
      = nil_nat ) ).

% slice_Nil
thf(fact_2891_slice__Nil,axiom,
    ! [Begin: nat,End: nat] :
      ( ( slice_char @ Begin @ End @ nil_char )
      = nil_char ) ).

% slice_Nil
thf(fact_2892_nonzero__mult__div__cancel__left,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ( ( divide_divide_nat @ ( times_times_nat @ A @ B ) @ A )
        = B ) ) ).

% nonzero_mult_div_cancel_left
thf(fact_2893_nonzero__mult__div__cancel__left,axiom,
    ! [A: int,B: int] :
      ( ( A != zero_zero_int )
     => ( ( divide_divide_int @ ( times_times_int @ A @ B ) @ A )
        = B ) ) ).

% nonzero_mult_div_cancel_left
thf(fact_2894_nonzero__mult__div__cancel__left,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ A @ B ) @ A )
        = B ) ) ).

% nonzero_mult_div_cancel_left
thf(fact_2895_nonzero__mult__div__cancel__left,axiom,
    ! [A: rat,B: rat] :
      ( ( A != zero_zero_rat )
     => ( ( divide_divide_rat @ ( times_times_rat @ A @ B ) @ A )
        = B ) ) ).

% nonzero_mult_div_cancel_left
thf(fact_2896_nonzero__mult__div__cancel__left,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ A @ B ) @ A )
        = B ) ) ).

% nonzero_mult_div_cancel_left
thf(fact_2897_nonzero__mult__div__cancel__right,axiom,
    ! [B: nat,A: nat] :
      ( ( B != zero_zero_nat )
     => ( ( divide_divide_nat @ ( times_times_nat @ A @ B ) @ B )
        = A ) ) ).

% nonzero_mult_div_cancel_right
thf(fact_2898_nonzero__mult__div__cancel__right,axiom,
    ! [B: int,A: int] :
      ( ( B != zero_zero_int )
     => ( ( divide_divide_int @ ( times_times_int @ A @ B ) @ B )
        = A ) ) ).

% nonzero_mult_div_cancel_right
thf(fact_2899_nonzero__mult__div__cancel__right,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( B != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ A @ B ) @ B )
        = A ) ) ).

% nonzero_mult_div_cancel_right
thf(fact_2900_nonzero__mult__div__cancel__right,axiom,
    ! [B: rat,A: rat] :
      ( ( B != zero_zero_rat )
     => ( ( divide_divide_rat @ ( times_times_rat @ A @ B ) @ B )
        = A ) ) ).

% nonzero_mult_div_cancel_right
thf(fact_2901_nonzero__mult__div__cancel__right,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( B != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ A @ B ) @ B )
        = A ) ) ).

% nonzero_mult_div_cancel_right
thf(fact_2902_nonzero__mult__divide__mult__cancel__right2,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( divide_divide_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ C @ B ) )
        = ( divide_divide_rat @ A @ B ) ) ) ).

% nonzero_mult_divide_mult_cancel_right2
thf(fact_2903_nonzero__mult__divide__mult__cancel__right,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( divide_divide_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) )
        = ( divide_divide_rat @ A @ B ) ) ) ).

% nonzero_mult_divide_mult_cancel_right
thf(fact_2904_nonzero__mult__divide__mult__cancel__left2,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( divide_divide_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ B @ C ) )
        = ( divide_divide_rat @ A @ B ) ) ) ).

% nonzero_mult_divide_mult_cancel_left2
thf(fact_2905_nonzero__mult__divide__mult__cancel__left,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( divide_divide_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
        = ( divide_divide_rat @ A @ B ) ) ) ).

% nonzero_mult_divide_mult_cancel_left
thf(fact_2906_mult__divide__mult__cancel__left__if,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ( C = zero_zero_rat )
       => ( ( divide_divide_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
          = zero_zero_rat ) )
      & ( ( C != zero_zero_rat )
       => ( ( divide_divide_rat @ ( times_times_rat @ C @ A ) @ ( times_times_rat @ C @ B ) )
          = ( divide_divide_rat @ A @ B ) ) ) ) ).

% mult_divide_mult_cancel_left_if
thf(fact_2907_zero__eq__1__divide__iff,axiom,
    ! [A: rat] :
      ( ( zero_zero_rat
        = ( divide_divide_rat @ one_one_rat @ A ) )
      = ( A = zero_zero_rat ) ) ).

% zero_eq_1_divide_iff
thf(fact_2908_one__divide__eq__0__iff,axiom,
    ! [A: rat] :
      ( ( ( divide_divide_rat @ one_one_rat @ A )
        = zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% one_divide_eq_0_iff
thf(fact_2909_eq__divide__eq__1,axiom,
    ! [B: rat,A: rat] :
      ( ( one_one_rat
        = ( divide_divide_rat @ B @ A ) )
      = ( ( A != zero_zero_rat )
        & ( A = B ) ) ) ).

% eq_divide_eq_1
thf(fact_2910_divide__eq__eq__1,axiom,
    ! [B: rat,A: rat] :
      ( ( ( divide_divide_rat @ B @ A )
        = one_one_rat )
      = ( ( A != zero_zero_rat )
        & ( A = B ) ) ) ).

% divide_eq_eq_1
thf(fact_2911_divide__self__if,axiom,
    ! [A: rat] :
      ( ( ( A = zero_zero_rat )
       => ( ( divide_divide_rat @ A @ A )
          = zero_zero_rat ) )
      & ( ( A != zero_zero_rat )
       => ( ( divide_divide_rat @ A @ A )
          = one_one_rat ) ) ) ).

% divide_self_if
thf(fact_2912_divide__self,axiom,
    ! [A: rat] :
      ( ( A != zero_zero_rat )
     => ( ( divide_divide_rat @ A @ A )
        = one_one_rat ) ) ).

% divide_self
thf(fact_2913_one__eq__divide__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( one_one_rat
        = ( divide_divide_rat @ A @ B ) )
      = ( ( B != zero_zero_rat )
        & ( A = B ) ) ) ).

% one_eq_divide_iff
thf(fact_2914_divide__eq__1__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ( divide_divide_rat @ A @ B )
        = one_one_rat )
      = ( ( B != zero_zero_rat )
        & ( A = B ) ) ) ).

% divide_eq_1_iff
thf(fact_2915_div__self,axiom,
    ! [A: nat] :
      ( ( A != zero_zero_nat )
     => ( ( divide_divide_nat @ A @ A )
        = one_one_nat ) ) ).

% div_self
thf(fact_2916_div__self,axiom,
    ! [A: int] :
      ( ( A != zero_zero_int )
     => ( ( divide_divide_int @ A @ A )
        = one_one_int ) ) ).

% div_self
thf(fact_2917_div__self,axiom,
    ! [A: code_integer] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ A @ A )
        = one_one_Code_integer ) ) ).

% div_self
thf(fact_2918_div__self,axiom,
    ! [A: rat] :
      ( ( A != zero_zero_rat )
     => ( ( divide_divide_rat @ A @ A )
        = one_one_rat ) ) ).

% div_self
thf(fact_2919_div__self,axiom,
    ! [A: code_natural] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ A @ A )
        = one_one_Code_natural ) ) ).

% div_self
thf(fact_2920_abs__le__zero__iff,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ A ) @ zero_z3403309356797280102nteger )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% abs_le_zero_iff
thf(fact_2921_abs__le__zero__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ ( abs_abs_rat @ A ) @ zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% abs_le_zero_iff
thf(fact_2922_abs__le__zero__iff,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ ( abs_abs_int @ A ) @ zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% abs_le_zero_iff
thf(fact_2923_abs__le__self__iff,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ A ) @ A )
      = ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A ) ) ).

% abs_le_self_iff
thf(fact_2924_abs__le__self__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ ( abs_abs_rat @ A ) @ A )
      = ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ).

% abs_le_self_iff
thf(fact_2925_abs__le__self__iff,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ ( abs_abs_int @ A ) @ A )
      = ( ord_less_eq_int @ zero_zero_int @ A ) ) ).

% abs_le_self_iff
thf(fact_2926_abs__of__nonneg,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( abs_abs_Code_integer @ A )
        = A ) ) ).

% abs_of_nonneg
thf(fact_2927_abs__of__nonneg,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( abs_abs_rat @ A )
        = A ) ) ).

% abs_of_nonneg
thf(fact_2928_abs__of__nonneg,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( abs_abs_int @ A )
        = A ) ) ).

% abs_of_nonneg
thf(fact_2929_zero__less__abs__iff,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( abs_abs_Code_integer @ A ) )
      = ( A != zero_z3403309356797280102nteger ) ) ).

% zero_less_abs_iff
thf(fact_2930_zero__less__abs__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( abs_abs_rat @ A ) )
      = ( A != zero_zero_rat ) ) ).

% zero_less_abs_iff
thf(fact_2931_zero__less__abs__iff,axiom,
    ! [A: int] :
      ( ( ord_less_int @ zero_zero_int @ ( abs_abs_int @ A ) )
      = ( A != zero_zero_int ) ) ).

% zero_less_abs_iff
thf(fact_2932_divide__minus1,axiom,
    ! [X2: rat] :
      ( ( divide_divide_rat @ X2 @ ( uminus_uminus_rat @ one_one_rat ) )
      = ( uminus_uminus_rat @ X2 ) ) ).

% divide_minus1
thf(fact_2933_abs__neg__one,axiom,
    ( ( abs_abs_int @ ( uminus_uminus_int @ one_one_int ) )
    = one_one_int ) ).

% abs_neg_one
thf(fact_2934_abs__neg__one,axiom,
    ( ( abs_abs_Code_integer @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
    = one_one_Code_integer ) ).

% abs_neg_one
thf(fact_2935_abs__neg__one,axiom,
    ( ( abs_abs_rat @ ( uminus_uminus_rat @ one_one_rat ) )
    = one_one_rat ) ).

% abs_neg_one
thf(fact_2936_abs__power__int__minus,axiom,
    ! [A: rat,N: int] :
      ( ( abs_abs_rat @ ( power_int_rat @ ( uminus_uminus_rat @ A ) @ N ) )
      = ( abs_abs_rat @ ( power_int_rat @ A @ N ) ) ) ).

% abs_power_int_minus
thf(fact_2937_of__int__abs,axiom,
    ! [X2: int] :
      ( ( ring_18347121197199848620nteger @ ( abs_abs_int @ X2 ) )
      = ( abs_abs_Code_integer @ ( ring_18347121197199848620nteger @ X2 ) ) ) ).

% of_int_abs
thf(fact_2938_of__int__abs,axiom,
    ! [X2: int] :
      ( ( ring_1_of_int_rat @ ( abs_abs_int @ X2 ) )
      = ( abs_abs_rat @ ( ring_1_of_int_rat @ X2 ) ) ) ).

% of_int_abs
thf(fact_2939_of__int__abs,axiom,
    ! [X2: int] :
      ( ( ring_1_of_int_int @ ( abs_abs_int @ X2 ) )
      = ( abs_abs_int @ ( ring_1_of_int_int @ X2 ) ) ) ).

% of_int_abs
thf(fact_2940_frac__eq__0__iff,axiom,
    ! [X2: rat] :
      ( ( ( archimedean_frac_rat @ X2 )
        = zero_zero_rat )
      = ( member_rat @ X2 @ ring_1_Ints_rat ) ) ).

% frac_eq_0_iff
thf(fact_2941_slice__complete,axiom,
    ! [Xs: list_nat] :
      ( ( slice_nat @ zero_zero_nat @ ( size_size_list_nat @ Xs ) @ Xs )
      = Xs ) ).

% slice_complete
thf(fact_2942_slice__complete,axiom,
    ! [Xs: list_int] :
      ( ( slice_int @ zero_zero_nat @ ( size_size_list_int @ Xs ) @ Xs )
      = Xs ) ).

% slice_complete
thf(fact_2943_slice__complete,axiom,
    ! [Xs: list_o] :
      ( ( slice_o @ zero_zero_nat @ ( size_size_list_o @ Xs ) @ Xs )
      = Xs ) ).

% slice_complete
thf(fact_2944_zero__le__divide__1__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( divide_divide_rat @ one_one_rat @ A ) )
      = ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ).

% zero_le_divide_1_iff
thf(fact_2945_divide__le__0__1__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ one_one_rat @ A ) @ zero_zero_rat )
      = ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ).

% divide_le_0_1_iff
thf(fact_2946_zero__less__divide__1__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( divide_divide_rat @ one_one_rat @ A ) )
      = ( ord_less_rat @ zero_zero_rat @ A ) ) ).

% zero_less_divide_1_iff
thf(fact_2947_less__divide__eq__1__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ one_one_rat @ ( divide_divide_rat @ B @ A ) )
        = ( ord_less_rat @ A @ B ) ) ) ).

% less_divide_eq_1_pos
thf(fact_2948_less__divide__eq__1__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_rat @ one_one_rat @ ( divide_divide_rat @ B @ A ) )
        = ( ord_less_rat @ B @ A ) ) ) ).

% less_divide_eq_1_neg
thf(fact_2949_divide__less__eq__1__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ ( divide_divide_rat @ B @ A ) @ one_one_rat )
        = ( ord_less_rat @ B @ A ) ) ) ).

% divide_less_eq_1_pos
thf(fact_2950_divide__less__eq__1__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_rat @ ( divide_divide_rat @ B @ A ) @ one_one_rat )
        = ( ord_less_rat @ A @ B ) ) ) ).

% divide_less_eq_1_neg
thf(fact_2951_divide__less__0__1__iff,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ ( divide_divide_rat @ one_one_rat @ A ) @ zero_zero_rat )
      = ( ord_less_rat @ A @ zero_zero_rat ) ) ).

% divide_less_0_1_iff
thf(fact_2952_nonzero__divide__mult__cancel__right,axiom,
    ! [B: rat,A: rat] :
      ( ( B != zero_zero_rat )
     => ( ( divide_divide_rat @ B @ ( times_times_rat @ A @ B ) )
        = ( divide_divide_rat @ one_one_rat @ A ) ) ) ).

% nonzero_divide_mult_cancel_right
thf(fact_2953_nonzero__divide__mult__cancel__left,axiom,
    ! [A: rat,B: rat] :
      ( ( A != zero_zero_rat )
     => ( ( divide_divide_rat @ A @ ( times_times_rat @ A @ B ) )
        = ( divide_divide_rat @ one_one_rat @ B ) ) ) ).

% nonzero_divide_mult_cancel_left
thf(fact_2954_abs__of__nonpos,axiom,
    ! [A: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( abs_abs_Code_integer @ A )
        = ( uminus1351360451143612070nteger @ A ) ) ) ).

% abs_of_nonpos
thf(fact_2955_abs__of__nonpos,axiom,
    ! [A: rat] :
      ( ( ord_less_eq_rat @ A @ zero_zero_rat )
     => ( ( abs_abs_rat @ A )
        = ( uminus_uminus_rat @ A ) ) ) ).

% abs_of_nonpos
thf(fact_2956_abs__of__nonpos,axiom,
    ! [A: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( abs_abs_int @ A )
        = ( uminus_uminus_int @ A ) ) ) ).

% abs_of_nonpos
thf(fact_2957_zero__le__divide__abs__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( divide_divide_rat @ A @ ( abs_abs_rat @ B ) ) )
      = ( ( ord_less_eq_rat @ zero_zero_rat @ A )
        | ( B = zero_zero_rat ) ) ) ).

% zero_le_divide_abs_iff
thf(fact_2958_divide__le__0__abs__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ A @ ( abs_abs_rat @ B ) ) @ zero_zero_rat )
      = ( ( ord_less_eq_rat @ A @ zero_zero_rat )
        | ( B = zero_zero_rat ) ) ) ).

% divide_le_0_abs_iff
thf(fact_2959_zabs__less__one__iff,axiom,
    ! [Z2: int] :
      ( ( ord_less_int @ ( abs_abs_int @ Z2 ) @ one_one_int )
      = ( Z2 = zero_zero_int ) ) ).

% zabs_less_one_iff
thf(fact_2960_floor__add2,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ( member_rat @ X2 @ ring_1_Ints_rat )
        | ( member_rat @ Y @ ring_1_Ints_rat ) )
     => ( ( archim3151403230148437115or_rat @ ( plus_plus_rat @ X2 @ Y ) )
        = ( plus_plus_int @ ( archim3151403230148437115or_rat @ X2 ) @ ( archim3151403230148437115or_rat @ Y ) ) ) ) ).

% floor_add2
thf(fact_2961_frac__gt__0__iff,axiom,
    ! [X2: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( archimedean_frac_rat @ X2 ) )
      = ( ~ ( member_rat @ X2 @ ring_1_Ints_rat ) ) ) ).

% frac_gt_0_iff
thf(fact_2962_le__divide__eq__1__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ one_one_rat @ ( divide_divide_rat @ B @ A ) )
        = ( ord_less_eq_rat @ A @ B ) ) ) ).

% le_divide_eq_1_pos
thf(fact_2963_le__divide__eq__1__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ one_one_rat @ ( divide_divide_rat @ B @ A ) )
        = ( ord_less_eq_rat @ B @ A ) ) ) ).

% le_divide_eq_1_neg
thf(fact_2964_divide__le__eq__1__pos,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ A ) @ one_one_rat )
        = ( ord_less_eq_rat @ B @ A ) ) ) ).

% divide_le_eq_1_pos
thf(fact_2965_divide__le__eq__1__neg,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ A ) @ one_one_rat )
        = ( ord_less_eq_rat @ A @ B ) ) ) ).

% divide_le_eq_1_neg
thf(fact_2966_div__abs__eq__div__nat,axiom,
    ! [K: int,L: int] :
      ( ( divide_divide_int @ ( abs_abs_int @ K ) @ ( abs_abs_int @ L ) )
      = ( semiri1314217659103216013at_int @ ( divide_divide_nat @ ( nat2 @ ( abs_abs_int @ K ) ) @ ( nat2 @ ( abs_abs_int @ L ) ) ) ) ) ).

% div_abs_eq_div_nat
thf(fact_2967_zdiv__int,axiom,
    ! [A: nat,B: nat] :
      ( ( semiri1314217659103216013at_int @ ( divide_divide_nat @ A @ B ) )
      = ( divide_divide_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) ).

% zdiv_int
thf(fact_2968_Ints__abs,axiom,
    ! [A: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( member_int @ ( abs_abs_int @ A ) @ ring_1_Ints_int ) ) ).

% Ints_abs
thf(fact_2969_Ints__abs,axiom,
    ! [A: code_integer] :
      ( ( member_Code_integer @ A @ ring_11222124179247155820nteger )
     => ( member_Code_integer @ ( abs_abs_Code_integer @ A ) @ ring_11222124179247155820nteger ) ) ).

% Ints_abs
thf(fact_2970_Ints__abs,axiom,
    ! [A: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( member_rat @ ( abs_abs_rat @ A ) @ ring_1_Ints_rat ) ) ).

% Ints_abs
thf(fact_2971_nonzero__abs__divide,axiom,
    ! [B: rat,A: rat] :
      ( ( B != zero_zero_rat )
     => ( ( abs_abs_rat @ ( divide_divide_rat @ A @ B ) )
        = ( divide_divide_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) ) ) ).

% nonzero_abs_divide
thf(fact_2972_abs__div__pos,axiom,
    ! [Y: rat,X2: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Y )
     => ( ( divide_divide_rat @ ( abs_abs_rat @ X2 ) @ Y )
        = ( abs_abs_rat @ ( divide_divide_rat @ X2 @ Y ) ) ) ) ).

% abs_div_pos
thf(fact_2973_abs__ge__self,axiom,
    ! [A: code_integer] : ( ord_le3102999989581377725nteger @ A @ ( abs_abs_Code_integer @ A ) ) ).

% abs_ge_self
thf(fact_2974_abs__ge__self,axiom,
    ! [A: rat] : ( ord_less_eq_rat @ A @ ( abs_abs_rat @ A ) ) ).

% abs_ge_self
thf(fact_2975_abs__ge__self,axiom,
    ! [A: int] : ( ord_less_eq_int @ A @ ( abs_abs_int @ A ) ) ).

% abs_ge_self
thf(fact_2976_abs__le__D1,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ A ) @ B )
     => ( ord_le3102999989581377725nteger @ A @ B ) ) ).

% abs_le_D1
thf(fact_2977_abs__le__D1,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( abs_abs_rat @ A ) @ B )
     => ( ord_less_eq_rat @ A @ B ) ) ).

% abs_le_D1
thf(fact_2978_abs__le__D1,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ ( abs_abs_int @ A ) @ B )
     => ( ord_less_eq_int @ A @ B ) ) ).

% abs_le_D1
thf(fact_2979_abs__eq__0__iff,axiom,
    ! [A: int] :
      ( ( ( abs_abs_int @ A )
        = zero_zero_int )
      = ( A = zero_zero_int ) ) ).

% abs_eq_0_iff
thf(fact_2980_abs__eq__0__iff,axiom,
    ! [A: code_integer] :
      ( ( ( abs_abs_Code_integer @ A )
        = zero_z3403309356797280102nteger )
      = ( A = zero_z3403309356797280102nteger ) ) ).

% abs_eq_0_iff
thf(fact_2981_abs__eq__0__iff,axiom,
    ! [A: rat] :
      ( ( ( abs_abs_rat @ A )
        = zero_zero_rat )
      = ( A = zero_zero_rat ) ) ).

% abs_eq_0_iff
thf(fact_2982_floor__divide__of__int__eq,axiom,
    ! [K: int,L: int] :
      ( ( archim3151403230148437115or_rat @ ( divide_divide_rat @ ( ring_1_of_int_rat @ K ) @ ( ring_1_of_int_rat @ L ) ) )
      = ( divide_divide_int @ K @ L ) ) ).

% floor_divide_of_int_eq
thf(fact_2983_abs__one,axiom,
    ( ( abs_abs_int @ one_one_int )
    = one_one_int ) ).

% abs_one
thf(fact_2984_abs__one,axiom,
    ( ( abs_abs_Code_integer @ one_one_Code_integer )
    = one_one_Code_integer ) ).

% abs_one
thf(fact_2985_abs__one,axiom,
    ( ( abs_abs_rat @ one_one_rat )
    = one_one_rat ) ).

% abs_one
thf(fact_2986_abs__minus__commute,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ A @ B ) )
      = ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ B @ A ) ) ) ).

% abs_minus_commute
thf(fact_2987_abs__minus__commute,axiom,
    ! [A: rat,B: rat] :
      ( ( abs_abs_rat @ ( minus_minus_rat @ A @ B ) )
      = ( abs_abs_rat @ ( minus_minus_rat @ B @ A ) ) ) ).

% abs_minus_commute
thf(fact_2988_abs__minus__commute,axiom,
    ! [A: int,B: int] :
      ( ( abs_abs_int @ ( minus_minus_int @ A @ B ) )
      = ( abs_abs_int @ ( minus_minus_int @ B @ A ) ) ) ).

% abs_minus_commute
thf(fact_2989_add__divide__distrib,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( divide_divide_rat @ ( plus_plus_rat @ A @ B ) @ C )
      = ( plus_plus_rat @ ( divide_divide_rat @ A @ C ) @ ( divide_divide_rat @ B @ C ) ) ) ).

% add_divide_distrib
thf(fact_2990_power__int__abs,axiom,
    ! [A: rat,N: int] :
      ( ( abs_abs_rat @ ( power_int_rat @ A @ N ) )
      = ( power_int_rat @ ( abs_abs_rat @ A ) @ N ) ) ).

% power_int_abs
thf(fact_2991_nat__div__as__int,axiom,
    ( divide_divide_nat
    = ( ^ [A2: nat,B2: nat] : ( nat2 @ ( divide_divide_int @ ( semiri1314217659103216013at_int @ A2 ) @ ( semiri1314217659103216013at_int @ B2 ) ) ) ) ) ).

% nat_div_as_int
thf(fact_2992_distrib__right__NO__MATCH,axiom,
    ! [X2: nat,Y: nat,C: code_integer,A: code_integer,B: code_integer] :
      ( ( nO_MAT8694959213317031834nteger @ ( divide_divide_nat @ X2 @ Y ) @ C )
     => ( ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_2993_distrib__right__NO__MATCH,axiom,
    ! [X2: nat,Y: nat,C: rat,A: rat,B: rat] :
      ( ( nO_MATCH_nat_rat @ ( divide_divide_nat @ X2 @ Y ) @ C )
     => ( ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ C )
        = ( plus_plus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_2994_distrib__right__NO__MATCH,axiom,
    ! [X2: nat,Y: nat,C: nat,A: nat,B: nat] :
      ( ( nO_MATCH_nat_nat @ ( divide_divide_nat @ X2 @ Y ) @ C )
     => ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ C )
        = ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_2995_distrib__right__NO__MATCH,axiom,
    ! [X2: nat,Y: nat,C: int,A: int,B: int] :
      ( ( nO_MATCH_nat_int @ ( divide_divide_nat @ X2 @ Y ) @ C )
     => ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ C )
        = ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_2996_distrib__right__NO__MATCH,axiom,
    ! [X2: int,Y: int,C: code_integer,A: code_integer,B: code_integer] :
      ( ( nO_MAT9066612773553876470nteger @ ( divide_divide_int @ X2 @ Y ) @ C )
     => ( ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_2997_distrib__right__NO__MATCH,axiom,
    ! [X2: int,Y: int,C: rat,A: rat,B: rat] :
      ( ( nO_MATCH_int_rat @ ( divide_divide_int @ X2 @ Y ) @ C )
     => ( ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ C )
        = ( plus_plus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_2998_distrib__right__NO__MATCH,axiom,
    ! [X2: int,Y: int,C: nat,A: nat,B: nat] :
      ( ( nO_MATCH_int_nat @ ( divide_divide_int @ X2 @ Y ) @ C )
     => ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ C )
        = ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_2999_distrib__right__NO__MATCH,axiom,
    ! [X2: int,Y: int,C: int,A: int,B: int] :
      ( ( nO_MATCH_int_int @ ( divide_divide_int @ X2 @ Y ) @ C )
     => ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ C )
        = ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_3000_distrib__right__NO__MATCH,axiom,
    ! [X2: code_integer,Y: code_integer,C: code_integer,A: code_integer,B: code_integer] :
      ( ( nO_MAT8252062027627875367nteger @ ( divide6298287555418463151nteger @ X2 @ Y ) @ C )
     => ( ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_3001_distrib__right__NO__MATCH,axiom,
    ! [X2: code_integer,Y: code_integer,C: rat,A: rat,B: rat] :
      ( ( nO_MAT7795273704451493282er_rat @ ( divide6298287555418463151nteger @ X2 @ Y ) @ C )
     => ( ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ C )
        = ( plus_plus_rat @ ( times_times_rat @ A @ C ) @ ( times_times_rat @ B @ C ) ) ) ) ).

% distrib_right_NO_MATCH
thf(fact_3002_distrib__left__NO__MATCH,axiom,
    ! [X2: nat,Y: nat,A: code_integer,B: code_integer,C: code_integer] :
      ( ( nO_MAT8694959213317031834nteger @ ( divide_divide_nat @ X2 @ Y ) @ A )
     => ( ( times_3573771949741848930nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ B ) @ ( times_3573771949741848930nteger @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3003_distrib__left__NO__MATCH,axiom,
    ! [X2: nat,Y: nat,A: rat,B: rat,C: rat] :
      ( ( nO_MATCH_nat_rat @ ( divide_divide_nat @ X2 @ Y ) @ A )
     => ( ( times_times_rat @ A @ ( plus_plus_rat @ B @ C ) )
        = ( plus_plus_rat @ ( times_times_rat @ A @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3004_distrib__left__NO__MATCH,axiom,
    ! [X2: nat,Y: nat,A: nat,B: nat,C: nat] :
      ( ( nO_MATCH_nat_nat @ ( divide_divide_nat @ X2 @ Y ) @ A )
     => ( ( times_times_nat @ A @ ( plus_plus_nat @ B @ C ) )
        = ( plus_plus_nat @ ( times_times_nat @ A @ B ) @ ( times_times_nat @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3005_distrib__left__NO__MATCH,axiom,
    ! [X2: nat,Y: nat,A: int,B: int,C: int] :
      ( ( nO_MATCH_nat_int @ ( divide_divide_nat @ X2 @ Y ) @ A )
     => ( ( times_times_int @ A @ ( plus_plus_int @ B @ C ) )
        = ( plus_plus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3006_distrib__left__NO__MATCH,axiom,
    ! [X2: int,Y: int,A: code_integer,B: code_integer,C: code_integer] :
      ( ( nO_MAT9066612773553876470nteger @ ( divide_divide_int @ X2 @ Y ) @ A )
     => ( ( times_3573771949741848930nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ B ) @ ( times_3573771949741848930nteger @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3007_distrib__left__NO__MATCH,axiom,
    ! [X2: int,Y: int,A: rat,B: rat,C: rat] :
      ( ( nO_MATCH_int_rat @ ( divide_divide_int @ X2 @ Y ) @ A )
     => ( ( times_times_rat @ A @ ( plus_plus_rat @ B @ C ) )
        = ( plus_plus_rat @ ( times_times_rat @ A @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3008_distrib__left__NO__MATCH,axiom,
    ! [X2: int,Y: int,A: nat,B: nat,C: nat] :
      ( ( nO_MATCH_int_nat @ ( divide_divide_int @ X2 @ Y ) @ A )
     => ( ( times_times_nat @ A @ ( plus_plus_nat @ B @ C ) )
        = ( plus_plus_nat @ ( times_times_nat @ A @ B ) @ ( times_times_nat @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3009_distrib__left__NO__MATCH,axiom,
    ! [X2: int,Y: int,A: int,B: int,C: int] :
      ( ( nO_MATCH_int_int @ ( divide_divide_int @ X2 @ Y ) @ A )
     => ( ( times_times_int @ A @ ( plus_plus_int @ B @ C ) )
        = ( plus_plus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3010_distrib__left__NO__MATCH,axiom,
    ! [X2: code_integer,Y: code_integer,A: code_integer,B: code_integer,C: code_integer] :
      ( ( nO_MAT8252062027627875367nteger @ ( divide6298287555418463151nteger @ X2 @ Y ) @ A )
     => ( ( times_3573771949741848930nteger @ A @ ( plus_p5714425477246183910nteger @ B @ C ) )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ B ) @ ( times_3573771949741848930nteger @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3011_distrib__left__NO__MATCH,axiom,
    ! [X2: code_integer,Y: code_integer,A: rat,B: rat,C: rat] :
      ( ( nO_MAT7795273704451493282er_rat @ ( divide6298287555418463151nteger @ X2 @ Y ) @ A )
     => ( ( times_times_rat @ A @ ( plus_plus_rat @ B @ C ) )
        = ( plus_plus_rat @ ( times_times_rat @ A @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% distrib_left_NO_MATCH
thf(fact_3012_power__int__divide__distrib,axiom,
    ! [X2: rat,Y: rat,M: int] :
      ( ( power_int_rat @ ( divide_divide_rat @ X2 @ Y ) @ M )
      = ( divide_divide_rat @ ( power_int_rat @ X2 @ M ) @ ( power_int_rat @ Y @ M ) ) ) ).

% power_int_divide_distrib
thf(fact_3013_Ints__0,axiom,
    member_int @ zero_zero_int @ ring_1_Ints_int ).

% Ints_0
thf(fact_3014_Ints__0,axiom,
    member_Code_integer @ zero_z3403309356797280102nteger @ ring_11222124179247155820nteger ).

% Ints_0
thf(fact_3015_Ints__0,axiom,
    member_rat @ zero_zero_rat @ ring_1_Ints_rat ).

% Ints_0
thf(fact_3016_Ints__add,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( member_Code_integer @ A @ ring_11222124179247155820nteger )
     => ( ( member_Code_integer @ B @ ring_11222124179247155820nteger )
       => ( member_Code_integer @ ( plus_p5714425477246183910nteger @ A @ B ) @ ring_11222124179247155820nteger ) ) ) ).

% Ints_add
thf(fact_3017_Ints__add,axiom,
    ! [A: rat,B: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( ( member_rat @ B @ ring_1_Ints_rat )
       => ( member_rat @ ( plus_plus_rat @ A @ B ) @ ring_1_Ints_rat ) ) ) ).

% Ints_add
thf(fact_3018_Ints__add,axiom,
    ! [A: int,B: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( ( member_int @ B @ ring_1_Ints_int )
       => ( member_int @ ( plus_plus_int @ A @ B ) @ ring_1_Ints_int ) ) ) ).

% Ints_add
thf(fact_3019_Ints__mult,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( member_Code_integer @ A @ ring_11222124179247155820nteger )
     => ( ( member_Code_integer @ B @ ring_11222124179247155820nteger )
       => ( member_Code_integer @ ( times_3573771949741848930nteger @ A @ B ) @ ring_11222124179247155820nteger ) ) ) ).

% Ints_mult
thf(fact_3020_Ints__mult,axiom,
    ! [A: rat,B: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( ( member_rat @ B @ ring_1_Ints_rat )
       => ( member_rat @ ( times_times_rat @ A @ B ) @ ring_1_Ints_rat ) ) ) ).

% Ints_mult
thf(fact_3021_Ints__mult,axiom,
    ! [A: int,B: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( ( member_int @ B @ ring_1_Ints_int )
       => ( member_int @ ( times_times_int @ A @ B ) @ ring_1_Ints_int ) ) ) ).

% Ints_mult
thf(fact_3022_Ints__1,axiom,
    member_int @ one_one_int @ ring_1_Ints_int ).

% Ints_1
thf(fact_3023_Ints__1,axiom,
    member_Code_integer @ one_one_Code_integer @ ring_11222124179247155820nteger ).

% Ints_1
thf(fact_3024_Ints__1,axiom,
    member_rat @ one_one_rat @ ring_1_Ints_rat ).

% Ints_1
thf(fact_3025_Ints__diff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( member_Code_integer @ A @ ring_11222124179247155820nteger )
     => ( ( member_Code_integer @ B @ ring_11222124179247155820nteger )
       => ( member_Code_integer @ ( minus_8373710615458151222nteger @ A @ B ) @ ring_11222124179247155820nteger ) ) ) ).

% Ints_diff
thf(fact_3026_Ints__diff,axiom,
    ! [A: rat,B: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( ( member_rat @ B @ ring_1_Ints_rat )
       => ( member_rat @ ( minus_minus_rat @ A @ B ) @ ring_1_Ints_rat ) ) ) ).

% Ints_diff
thf(fact_3027_Ints__diff,axiom,
    ! [A: int,B: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( ( member_int @ B @ ring_1_Ints_int )
       => ( member_int @ ( minus_minus_int @ A @ B ) @ ring_1_Ints_int ) ) ) ).

% Ints_diff
thf(fact_3028_minus__in__Ints__iff,axiom,
    ! [X2: int] :
      ( ( member_int @ ( uminus_uminus_int @ X2 ) @ ring_1_Ints_int )
      = ( member_int @ X2 @ ring_1_Ints_int ) ) ).

% minus_in_Ints_iff
thf(fact_3029_minus__in__Ints__iff,axiom,
    ! [X2: code_integer] :
      ( ( member_Code_integer @ ( uminus1351360451143612070nteger @ X2 ) @ ring_11222124179247155820nteger )
      = ( member_Code_integer @ X2 @ ring_11222124179247155820nteger ) ) ).

% minus_in_Ints_iff
thf(fact_3030_minus__in__Ints__iff,axiom,
    ! [X2: rat] :
      ( ( member_rat @ ( uminus_uminus_rat @ X2 ) @ ring_1_Ints_rat )
      = ( member_rat @ X2 @ ring_1_Ints_rat ) ) ).

% minus_in_Ints_iff
thf(fact_3031_Ints__minus,axiom,
    ! [A: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( member_int @ ( uminus_uminus_int @ A ) @ ring_1_Ints_int ) ) ).

% Ints_minus
thf(fact_3032_Ints__minus,axiom,
    ! [A: code_integer] :
      ( ( member_Code_integer @ A @ ring_11222124179247155820nteger )
     => ( member_Code_integer @ ( uminus1351360451143612070nteger @ A ) @ ring_11222124179247155820nteger ) ) ).

% Ints_minus
thf(fact_3033_Ints__minus,axiom,
    ! [A: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( member_rat @ ( uminus_uminus_rat @ A ) @ ring_1_Ints_rat ) ) ).

% Ints_minus
thf(fact_3034_Ints__of__nat,axiom,
    ! [N: nat] : ( member_int @ ( semiri1314217659103216013at_int @ N ) @ ring_1_Ints_int ) ).

% Ints_of_nat
thf(fact_3035_Ints__of__nat,axiom,
    ! [N: nat] : ( member_Code_integer @ ( semiri4939895301339042750nteger @ N ) @ ring_11222124179247155820nteger ) ).

% Ints_of_nat
thf(fact_3036_Ints__of__nat,axiom,
    ! [N: nat] : ( member_rat @ ( semiri681578069525770553at_rat @ N ) @ ring_1_Ints_rat ) ).

% Ints_of_nat
thf(fact_3037_Ints__of__int,axiom,
    ! [Z2: int] : ( member_Code_integer @ ( ring_18347121197199848620nteger @ Z2 ) @ ring_11222124179247155820nteger ) ).

% Ints_of_int
thf(fact_3038_Ints__of__int,axiom,
    ! [Z2: int] : ( member_rat @ ( ring_1_of_int_rat @ Z2 ) @ ring_1_Ints_rat ) ).

% Ints_of_int
thf(fact_3039_Ints__of__int,axiom,
    ! [Z2: int] : ( member_int @ ( ring_1_of_int_int @ Z2 ) @ ring_1_Ints_int ) ).

% Ints_of_int
thf(fact_3040_Ints__induct,axiom,
    ! [Q2: code_integer,P: code_integer > $o] :
      ( ( member_Code_integer @ Q2 @ ring_11222124179247155820nteger )
     => ( ! [Z4: int] : ( P @ ( ring_18347121197199848620nteger @ Z4 ) )
       => ( P @ Q2 ) ) ) ).

% Ints_induct
thf(fact_3041_Ints__induct,axiom,
    ! [Q2: rat,P: rat > $o] :
      ( ( member_rat @ Q2 @ ring_1_Ints_rat )
     => ( ! [Z4: int] : ( P @ ( ring_1_of_int_rat @ Z4 ) )
       => ( P @ Q2 ) ) ) ).

% Ints_induct
thf(fact_3042_Ints__induct,axiom,
    ! [Q2: int,P: int > $o] :
      ( ( member_int @ Q2 @ ring_1_Ints_int )
     => ( ! [Z4: int] : ( P @ ( ring_1_of_int_int @ Z4 ) )
       => ( P @ Q2 ) ) ) ).

% Ints_induct
thf(fact_3043_Ints__cases,axiom,
    ! [Q2: code_integer] :
      ( ( member_Code_integer @ Q2 @ ring_11222124179247155820nteger )
     => ~ ! [Z4: int] :
            ( Q2
           != ( ring_18347121197199848620nteger @ Z4 ) ) ) ).

% Ints_cases
thf(fact_3044_Ints__cases,axiom,
    ! [Q2: rat] :
      ( ( member_rat @ Q2 @ ring_1_Ints_rat )
     => ~ ! [Z4: int] :
            ( Q2
           != ( ring_1_of_int_rat @ Z4 ) ) ) ).

% Ints_cases
thf(fact_3045_Ints__cases,axiom,
    ! [Q2: int] :
      ( ( member_int @ Q2 @ ring_1_Ints_int )
     => ~ ! [Z4: int] :
            ( Q2
           != ( ring_1_of_int_int @ Z4 ) ) ) ).

% Ints_cases
thf(fact_3046_Ints__nonzero__abs__ge1,axiom,
    ! [X2: code_integer] :
      ( ( member_Code_integer @ X2 @ ring_11222124179247155820nteger )
     => ( ( X2 != zero_z3403309356797280102nteger )
       => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( abs_abs_Code_integer @ X2 ) ) ) ) ).

% Ints_nonzero_abs_ge1
thf(fact_3047_Ints__nonzero__abs__ge1,axiom,
    ! [X2: rat] :
      ( ( member_rat @ X2 @ ring_1_Ints_rat )
     => ( ( X2 != zero_zero_rat )
       => ( ord_less_eq_rat @ one_one_rat @ ( abs_abs_rat @ X2 ) ) ) ) ).

% Ints_nonzero_abs_ge1
thf(fact_3048_Ints__nonzero__abs__ge1,axiom,
    ! [X2: int] :
      ( ( member_int @ X2 @ ring_1_Ints_int )
     => ( ( X2 != zero_zero_int )
       => ( ord_less_eq_int @ one_one_int @ ( abs_abs_int @ X2 ) ) ) ) ).

% Ints_nonzero_abs_ge1
thf(fact_3049_Ints__nonzero__abs__less1,axiom,
    ! [X2: code_integer] :
      ( ( member_Code_integer @ X2 @ ring_11222124179247155820nteger )
     => ( ( ord_le6747313008572928689nteger @ ( abs_abs_Code_integer @ X2 ) @ one_one_Code_integer )
       => ( X2 = zero_z3403309356797280102nteger ) ) ) ).

% Ints_nonzero_abs_less1
thf(fact_3050_Ints__nonzero__abs__less1,axiom,
    ! [X2: rat] :
      ( ( member_rat @ X2 @ ring_1_Ints_rat )
     => ( ( ord_less_rat @ ( abs_abs_rat @ X2 ) @ one_one_rat )
       => ( X2 = zero_zero_rat ) ) ) ).

% Ints_nonzero_abs_less1
thf(fact_3051_Ints__nonzero__abs__less1,axiom,
    ! [X2: int] :
      ( ( member_int @ X2 @ ring_1_Ints_int )
     => ( ( ord_less_int @ ( abs_abs_int @ X2 ) @ one_one_int )
       => ( X2 = zero_zero_int ) ) ) ).

% Ints_nonzero_abs_less1
thf(fact_3052_Ints__eq__abs__less1,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( member_Code_integer @ X2 @ ring_11222124179247155820nteger )
     => ( ( member_Code_integer @ Y @ ring_11222124179247155820nteger )
       => ( ( X2 = Y )
          = ( ord_le6747313008572928689nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ X2 @ Y ) ) @ one_one_Code_integer ) ) ) ) ).

% Ints_eq_abs_less1
thf(fact_3053_Ints__eq__abs__less1,axiom,
    ! [X2: rat,Y: rat] :
      ( ( member_rat @ X2 @ ring_1_Ints_rat )
     => ( ( member_rat @ Y @ ring_1_Ints_rat )
       => ( ( X2 = Y )
          = ( ord_less_rat @ ( abs_abs_rat @ ( minus_minus_rat @ X2 @ Y ) ) @ one_one_rat ) ) ) ) ).

% Ints_eq_abs_less1
thf(fact_3054_Ints__eq__abs__less1,axiom,
    ! [X2: int,Y: int] :
      ( ( member_int @ X2 @ ring_1_Ints_int )
     => ( ( member_int @ Y @ ring_1_Ints_int )
       => ( ( X2 = Y )
          = ( ord_less_int @ ( abs_abs_int @ ( minus_minus_int @ X2 @ Y ) ) @ one_one_int ) ) ) ) ).

% Ints_eq_abs_less1
thf(fact_3055_floor__divide__of__nat__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( archim3151403230148437115or_rat @ ( divide_divide_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ N ) ) )
      = ( semiri1314217659103216013at_int @ ( divide_divide_nat @ M @ N ) ) ) ).

% floor_divide_of_nat_eq
thf(fact_3056_abs__ge__zero,axiom,
    ! [A: code_integer] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( abs_abs_Code_integer @ A ) ) ).

% abs_ge_zero
thf(fact_3057_abs__ge__zero,axiom,
    ! [A: rat] : ( ord_less_eq_rat @ zero_zero_rat @ ( abs_abs_rat @ A ) ) ).

% abs_ge_zero
thf(fact_3058_abs__ge__zero,axiom,
    ! [A: int] : ( ord_less_eq_int @ zero_zero_int @ ( abs_abs_int @ A ) ) ).

% abs_ge_zero
thf(fact_3059_abs__not__less__zero,axiom,
    ! [A: code_integer] :
      ~ ( ord_le6747313008572928689nteger @ ( abs_abs_Code_integer @ A ) @ zero_z3403309356797280102nteger ) ).

% abs_not_less_zero
thf(fact_3060_abs__not__less__zero,axiom,
    ! [A: rat] :
      ~ ( ord_less_rat @ ( abs_abs_rat @ A ) @ zero_zero_rat ) ).

% abs_not_less_zero
thf(fact_3061_abs__not__less__zero,axiom,
    ! [A: int] :
      ~ ( ord_less_int @ ( abs_abs_int @ A ) @ zero_zero_int ) ).

% abs_not_less_zero
thf(fact_3062_abs__of__pos,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( abs_abs_Code_integer @ A )
        = A ) ) ).

% abs_of_pos
thf(fact_3063_abs__of__pos,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( abs_abs_rat @ A )
        = A ) ) ).

% abs_of_pos
thf(fact_3064_abs__of__pos,axiom,
    ! [A: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( abs_abs_int @ A )
        = A ) ) ).

% abs_of_pos
thf(fact_3065_abs__triangle__ineq,axiom,
    ! [A: code_integer,B: code_integer] : ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( plus_p5714425477246183910nteger @ A @ B ) ) @ ( plus_p5714425477246183910nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) ) ).

% abs_triangle_ineq
thf(fact_3066_abs__triangle__ineq,axiom,
    ! [A: rat,B: rat] : ( ord_less_eq_rat @ ( abs_abs_rat @ ( plus_plus_rat @ A @ B ) ) @ ( plus_plus_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) ) ).

% abs_triangle_ineq
thf(fact_3067_abs__triangle__ineq,axiom,
    ! [A: int,B: int] : ( ord_less_eq_int @ ( abs_abs_int @ ( plus_plus_int @ A @ B ) ) @ ( plus_plus_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) ) ).

% abs_triangle_ineq
thf(fact_3068_abs__triangle__ineq2__sym,axiom,
    ! [A: code_integer,B: code_integer] : ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ B @ A ) ) ) ).

% abs_triangle_ineq2_sym
thf(fact_3069_abs__triangle__ineq2__sym,axiom,
    ! [A: rat,B: rat] : ( ord_less_eq_rat @ ( minus_minus_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) @ ( abs_abs_rat @ ( minus_minus_rat @ B @ A ) ) ) ).

% abs_triangle_ineq2_sym
thf(fact_3070_abs__triangle__ineq2__sym,axiom,
    ! [A: int,B: int] : ( ord_less_eq_int @ ( minus_minus_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) @ ( abs_abs_int @ ( minus_minus_int @ B @ A ) ) ) ).

% abs_triangle_ineq2_sym
thf(fact_3071_abs__triangle__ineq3,axiom,
    ! [A: code_integer,B: code_integer] : ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) ) @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ A @ B ) ) ) ).

% abs_triangle_ineq3
thf(fact_3072_abs__triangle__ineq3,axiom,
    ! [A: rat,B: rat] : ( ord_less_eq_rat @ ( abs_abs_rat @ ( minus_minus_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) ) @ ( abs_abs_rat @ ( minus_minus_rat @ A @ B ) ) ) ).

% abs_triangle_ineq3
thf(fact_3073_abs__triangle__ineq3,axiom,
    ! [A: int,B: int] : ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) ) @ ( abs_abs_int @ ( minus_minus_int @ A @ B ) ) ) ).

% abs_triangle_ineq3
thf(fact_3074_abs__triangle__ineq2,axiom,
    ! [A: code_integer,B: code_integer] : ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ A @ B ) ) ) ).

% abs_triangle_ineq2
thf(fact_3075_abs__triangle__ineq2,axiom,
    ! [A: rat,B: rat] : ( ord_less_eq_rat @ ( minus_minus_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) @ ( abs_abs_rat @ ( minus_minus_rat @ A @ B ) ) ) ).

% abs_triangle_ineq2
thf(fact_3076_abs__triangle__ineq2,axiom,
    ! [A: int,B: int] : ( ord_less_eq_int @ ( minus_minus_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) @ ( abs_abs_int @ ( minus_minus_int @ A @ B ) ) ) ).

% abs_triangle_ineq2
thf(fact_3077_abs__leI,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ A ) @ B )
       => ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ A ) @ B ) ) ) ).

% abs_leI
thf(fact_3078_abs__leI,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ A ) @ B )
       => ( ord_less_eq_rat @ ( abs_abs_rat @ A ) @ B ) ) ) ).

% abs_leI
thf(fact_3079_abs__leI,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ B )
       => ( ord_less_eq_int @ ( abs_abs_int @ A ) @ B ) ) ) ).

% abs_leI
thf(fact_3080_abs__le__D2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ A ) @ B )
     => ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ A ) @ B ) ) ).

% abs_le_D2
thf(fact_3081_abs__le__D2,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( abs_abs_rat @ A ) @ B )
     => ( ord_less_eq_rat @ ( uminus_uminus_rat @ A ) @ B ) ) ).

% abs_le_D2
thf(fact_3082_abs__le__D2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ ( abs_abs_int @ A ) @ B )
     => ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ B ) ) ).

% abs_le_D2
thf(fact_3083_abs__le__iff,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ A ) @ B )
      = ( ( ord_le3102999989581377725nteger @ A @ B )
        & ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ A ) @ B ) ) ) ).

% abs_le_iff
thf(fact_3084_abs__le__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( abs_abs_rat @ A ) @ B )
      = ( ( ord_less_eq_rat @ A @ B )
        & ( ord_less_eq_rat @ ( uminus_uminus_rat @ A ) @ B ) ) ) ).

% abs_le_iff
thf(fact_3085_abs__le__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ ( abs_abs_int @ A ) @ B )
      = ( ( ord_less_eq_int @ A @ B )
        & ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ B ) ) ) ).

% abs_le_iff
thf(fact_3086_abs__ge__minus__self,axiom,
    ! [A: code_integer] : ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ A ) @ ( abs_abs_Code_integer @ A ) ) ).

% abs_ge_minus_self
thf(fact_3087_abs__ge__minus__self,axiom,
    ! [A: rat] : ( ord_less_eq_rat @ ( uminus_uminus_rat @ A ) @ ( abs_abs_rat @ A ) ) ).

% abs_ge_minus_self
thf(fact_3088_abs__ge__minus__self,axiom,
    ! [A: int] : ( ord_less_eq_int @ ( uminus_uminus_int @ A ) @ ( abs_abs_int @ A ) ) ).

% abs_ge_minus_self
thf(fact_3089_divide__right__mono__neg,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ C @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( divide_divide_rat @ B @ C ) @ ( divide_divide_rat @ A @ C ) ) ) ) ).

% divide_right_mono_neg
thf(fact_3090_divide__nonpos__nonpos,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ X2 @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ Y @ zero_zero_rat )
       => ( ord_less_eq_rat @ zero_zero_rat @ ( divide_divide_rat @ X2 @ Y ) ) ) ) ).

% divide_nonpos_nonpos
thf(fact_3091_divide__nonpos__nonneg,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ X2 @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ Y )
       => ( ord_less_eq_rat @ ( divide_divide_rat @ X2 @ Y ) @ zero_zero_rat ) ) ) ).

% divide_nonpos_nonneg
thf(fact_3092_divide__nonneg__nonpos,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X2 )
     => ( ( ord_less_eq_rat @ Y @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( divide_divide_rat @ X2 @ Y ) @ zero_zero_rat ) ) ) ).

% divide_nonneg_nonpos
thf(fact_3093_divide__nonneg__nonneg,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X2 )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ Y )
       => ( ord_less_eq_rat @ zero_zero_rat @ ( divide_divide_rat @ X2 @ Y ) ) ) ) ).

% divide_nonneg_nonneg
thf(fact_3094_zero__le__divide__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ ( divide_divide_rat @ A @ B ) )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ zero_zero_rat @ B ) )
        | ( ( ord_less_eq_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ B @ zero_zero_rat ) ) ) ) ).

% zero_le_divide_iff
thf(fact_3095_divide__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
       => ( ord_less_eq_rat @ ( divide_divide_rat @ A @ C ) @ ( divide_divide_rat @ B @ C ) ) ) ) ).

% divide_right_mono
thf(fact_3096_divide__le__0__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ A @ B ) @ zero_zero_rat )
      = ( ( ( ord_less_eq_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ B @ zero_zero_rat ) )
        | ( ( ord_less_eq_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ zero_zero_rat @ B ) ) ) ) ).

% divide_le_0_iff
thf(fact_3097_divide__neg__neg,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ X2 @ zero_zero_rat )
     => ( ( ord_less_rat @ Y @ zero_zero_rat )
       => ( ord_less_rat @ zero_zero_rat @ ( divide_divide_rat @ X2 @ Y ) ) ) ) ).

% divide_neg_neg
thf(fact_3098_divide__neg__pos,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ X2 @ zero_zero_rat )
     => ( ( ord_less_rat @ zero_zero_rat @ Y )
       => ( ord_less_rat @ ( divide_divide_rat @ X2 @ Y ) @ zero_zero_rat ) ) ) ).

% divide_neg_pos
thf(fact_3099_divide__pos__neg,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ X2 )
     => ( ( ord_less_rat @ Y @ zero_zero_rat )
       => ( ord_less_rat @ ( divide_divide_rat @ X2 @ Y ) @ zero_zero_rat ) ) ) ).

% divide_pos_neg
thf(fact_3100_divide__pos__pos,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ X2 )
     => ( ( ord_less_rat @ zero_zero_rat @ Y )
       => ( ord_less_rat @ zero_zero_rat @ ( divide_divide_rat @ X2 @ Y ) ) ) ) ).

% divide_pos_pos
thf(fact_3101_divide__less__0__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ ( divide_divide_rat @ A @ B ) @ zero_zero_rat )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_rat @ B @ zero_zero_rat ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_rat @ zero_zero_rat @ B ) ) ) ) ).

% divide_less_0_iff
thf(fact_3102_divide__less__cancel,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_rat @ ( divide_divide_rat @ A @ C ) @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ A @ B ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_rat @ B @ A ) )
        & ( C != zero_zero_rat ) ) ) ).

% divide_less_cancel
thf(fact_3103_zero__less__divide__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( divide_divide_rat @ A @ B ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_rat @ zero_zero_rat @ B ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_rat @ B @ zero_zero_rat ) ) ) ) ).

% zero_less_divide_iff
thf(fact_3104_divide__strict__right__mono,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ zero_zero_rat @ C )
       => ( ord_less_rat @ ( divide_divide_rat @ A @ C ) @ ( divide_divide_rat @ B @ C ) ) ) ) ).

% divide_strict_right_mono
thf(fact_3105_divide__strict__right__mono__neg,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_rat @ B @ A )
     => ( ( ord_less_rat @ C @ zero_zero_rat )
       => ( ord_less_rat @ ( divide_divide_rat @ A @ C ) @ ( divide_divide_rat @ B @ C ) ) ) ) ).

% divide_strict_right_mono_neg
thf(fact_3106_nonzero__eq__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( A
          = ( divide_divide_rat @ B @ C ) )
        = ( ( times_times_rat @ A @ C )
          = B ) ) ) ).

% nonzero_eq_divide_eq
thf(fact_3107_nonzero__divide__eq__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( C != zero_zero_rat )
     => ( ( ( divide_divide_rat @ B @ C )
          = A )
        = ( B
          = ( times_times_rat @ A @ C ) ) ) ) ).

% nonzero_divide_eq_eq
thf(fact_3108_eq__divide__imp,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( C != zero_zero_rat )
     => ( ( ( times_times_rat @ A @ C )
          = B )
       => ( A
          = ( divide_divide_rat @ B @ C ) ) ) ) ).

% eq_divide_imp
thf(fact_3109_divide__eq__imp,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( C != zero_zero_rat )
     => ( ( B
          = ( times_times_rat @ A @ C ) )
       => ( ( divide_divide_rat @ B @ C )
          = A ) ) ) ).

% divide_eq_imp
thf(fact_3110_eq__divide__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( A
        = ( divide_divide_rat @ B @ C ) )
      = ( ( ( C != zero_zero_rat )
         => ( ( times_times_rat @ A @ C )
            = B ) )
        & ( ( C = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% eq_divide_eq
thf(fact_3111_divide__eq__eq,axiom,
    ! [B: rat,C: rat,A: rat] :
      ( ( ( divide_divide_rat @ B @ C )
        = A )
      = ( ( ( C != zero_zero_rat )
         => ( B
            = ( times_times_rat @ A @ C ) ) )
        & ( ( C = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% divide_eq_eq
thf(fact_3112_frac__eq__eq,axiom,
    ! [Y: rat,Z2: rat,X2: rat,W2: rat] :
      ( ( Y != zero_zero_rat )
     => ( ( Z2 != zero_zero_rat )
       => ( ( ( divide_divide_rat @ X2 @ Y )
            = ( divide_divide_rat @ W2 @ Z2 ) )
          = ( ( times_times_rat @ X2 @ Z2 )
            = ( times_times_rat @ W2 @ Y ) ) ) ) ) ).

% frac_eq_eq
thf(fact_3113_right__inverse__eq,axiom,
    ! [B: rat,A: rat] :
      ( ( B != zero_zero_rat )
     => ( ( ( divide_divide_rat @ A @ B )
          = one_one_rat )
        = ( A = B ) ) ) ).

% right_inverse_eq
thf(fact_3114_nonzero__minus__divide__right,axiom,
    ! [B: rat,A: rat] :
      ( ( B != zero_zero_rat )
     => ( ( uminus_uminus_rat @ ( divide_divide_rat @ A @ B ) )
        = ( divide_divide_rat @ A @ ( uminus_uminus_rat @ B ) ) ) ) ).

% nonzero_minus_divide_right
thf(fact_3115_nonzero__minus__divide__divide,axiom,
    ! [B: rat,A: rat] :
      ( ( B != zero_zero_rat )
     => ( ( divide_divide_rat @ ( uminus_uminus_rat @ A ) @ ( uminus_uminus_rat @ B ) )
        = ( divide_divide_rat @ A @ B ) ) ) ).

% nonzero_minus_divide_divide
thf(fact_3116_abs__zmult__eq__1,axiom,
    ! [M: int,N: int] :
      ( ( ( abs_abs_int @ ( times_times_int @ M @ N ) )
        = one_one_int )
     => ( ( abs_abs_int @ M )
        = one_one_int ) ) ).

% abs_zmult_eq_1
thf(fact_3117_div__neg__pos__less0,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ord_less_int @ ( divide_divide_int @ A @ B ) @ zero_zero_int ) ) ) ).

% div_neg_pos_less0
thf(fact_3118_neg__imp__zdiv__neg__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ B @ zero_zero_int )
     => ( ( ord_less_int @ ( divide_divide_int @ A @ B ) @ zero_zero_int )
        = ( ord_less_int @ zero_zero_int @ A ) ) ) ).

% neg_imp_zdiv_neg_iff
thf(fact_3119_pos__imp__zdiv__neg__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_int @ ( divide_divide_int @ A @ B ) @ zero_zero_int )
        = ( ord_less_int @ A @ zero_zero_int ) ) ) ).

% pos_imp_zdiv_neg_iff
thf(fact_3120_power__int__one__over,axiom,
    ! [X2: rat,N: int] :
      ( ( power_int_rat @ ( divide_divide_rat @ one_one_rat @ X2 ) @ N )
      = ( divide_divide_rat @ one_one_rat @ ( power_int_rat @ X2 @ N ) ) ) ).

% power_int_one_over
thf(fact_3121_Ints__double__eq__0__iff,axiom,
    ! [A: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( ( ( plus_plus_int @ A @ A )
          = zero_zero_int )
        = ( A = zero_zero_int ) ) ) ).

% Ints_double_eq_0_iff
thf(fact_3122_Ints__double__eq__0__iff,axiom,
    ! [A: code_integer] :
      ( ( member_Code_integer @ A @ ring_11222124179247155820nteger )
     => ( ( ( plus_p5714425477246183910nteger @ A @ A )
          = zero_z3403309356797280102nteger )
        = ( A = zero_z3403309356797280102nteger ) ) ) ).

% Ints_double_eq_0_iff
thf(fact_3123_Ints__double__eq__0__iff,axiom,
    ! [A: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( ( ( plus_plus_rat @ A @ A )
          = zero_zero_rat )
        = ( A = zero_zero_rat ) ) ) ).

% Ints_double_eq_0_iff
thf(fact_3124_dense__eq0__I,axiom,
    ! [X2: rat] :
      ( ! [E3: rat] :
          ( ( ord_less_rat @ zero_zero_rat @ E3 )
         => ( ord_less_eq_rat @ ( abs_abs_rat @ X2 ) @ E3 ) )
     => ( X2 = zero_zero_rat ) ) ).

% dense_eq0_I
thf(fact_3125_abs__eq__mult,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
          | ( ord_le3102999989581377725nteger @ A @ zero_z3403309356797280102nteger ) )
        & ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
          | ( ord_le3102999989581377725nteger @ B @ zero_z3403309356797280102nteger ) ) )
     => ( ( abs_abs_Code_integer @ ( times_3573771949741848930nteger @ A @ B ) )
        = ( times_3573771949741848930nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) ) ) ).

% abs_eq_mult
thf(fact_3126_abs__eq__mult,axiom,
    ! [A: rat,B: rat] :
      ( ( ( ( ord_less_eq_rat @ zero_zero_rat @ A )
          | ( ord_less_eq_rat @ A @ zero_zero_rat ) )
        & ( ( ord_less_eq_rat @ zero_zero_rat @ B )
          | ( ord_less_eq_rat @ B @ zero_zero_rat ) ) )
     => ( ( abs_abs_rat @ ( times_times_rat @ A @ B ) )
        = ( times_times_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) ) ) ).

% abs_eq_mult
thf(fact_3127_abs__eq__mult,axiom,
    ! [A: int,B: int] :
      ( ( ( ( ord_less_eq_int @ zero_zero_int @ A )
          | ( ord_less_eq_int @ A @ zero_zero_int ) )
        & ( ( ord_less_eq_int @ zero_zero_int @ B )
          | ( ord_less_eq_int @ B @ zero_zero_int ) ) )
     => ( ( abs_abs_int @ ( times_times_int @ A @ B ) )
        = ( times_times_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) ) ) ).

% abs_eq_mult
thf(fact_3128_abs__mult__pos,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ X2 )
     => ( ( times_3573771949741848930nteger @ ( abs_abs_Code_integer @ Y ) @ X2 )
        = ( abs_abs_Code_integer @ ( times_3573771949741848930nteger @ Y @ X2 ) ) ) ) ).

% abs_mult_pos
thf(fact_3129_abs__mult__pos,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X2 )
     => ( ( times_times_rat @ ( abs_abs_rat @ Y ) @ X2 )
        = ( abs_abs_rat @ ( times_times_rat @ Y @ X2 ) ) ) ) ).

% abs_mult_pos
thf(fact_3130_abs__mult__pos,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X2 )
     => ( ( times_times_int @ ( abs_abs_int @ Y ) @ X2 )
        = ( abs_abs_int @ ( times_times_int @ Y @ X2 ) ) ) ) ).

% abs_mult_pos
thf(fact_3131_abs__minus__le__zero,axiom,
    ! [A: code_integer] : ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ ( abs_abs_Code_integer @ A ) ) @ zero_z3403309356797280102nteger ) ).

% abs_minus_le_zero
thf(fact_3132_abs__minus__le__zero,axiom,
    ! [A: rat] : ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( abs_abs_rat @ A ) ) @ zero_zero_rat ) ).

% abs_minus_le_zero
thf(fact_3133_abs__minus__le__zero,axiom,
    ! [A: int] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( abs_abs_int @ A ) ) @ zero_zero_int ) ).

% abs_minus_le_zero
thf(fact_3134_eq__abs__iff_H,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( A
        = ( abs_abs_Code_integer @ B ) )
      = ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
        & ( ( B = A )
          | ( B
            = ( uminus1351360451143612070nteger @ A ) ) ) ) ) ).

% eq_abs_iff'
thf(fact_3135_eq__abs__iff_H,axiom,
    ! [A: rat,B: rat] :
      ( ( A
        = ( abs_abs_rat @ B ) )
      = ( ( ord_less_eq_rat @ zero_zero_rat @ A )
        & ( ( B = A )
          | ( B
            = ( uminus_uminus_rat @ A ) ) ) ) ) ).

% eq_abs_iff'
thf(fact_3136_eq__abs__iff_H,axiom,
    ! [A: int,B: int] :
      ( ( A
        = ( abs_abs_int @ B ) )
      = ( ( ord_less_eq_int @ zero_zero_int @ A )
        & ( ( B = A )
          | ( B
            = ( uminus_uminus_int @ A ) ) ) ) ) ).

% eq_abs_iff'
thf(fact_3137_abs__eq__iff_H,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( abs_abs_Code_integer @ A )
        = B )
      = ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
        & ( ( A = B )
          | ( A
            = ( uminus1351360451143612070nteger @ B ) ) ) ) ) ).

% abs_eq_iff'
thf(fact_3138_abs__eq__iff_H,axiom,
    ! [A: rat,B: rat] :
      ( ( ( abs_abs_rat @ A )
        = B )
      = ( ( ord_less_eq_rat @ zero_zero_rat @ B )
        & ( ( A = B )
          | ( A
            = ( uminus_uminus_rat @ B ) ) ) ) ) ).

% abs_eq_iff'
thf(fact_3139_abs__eq__iff_H,axiom,
    ! [A: int,B: int] :
      ( ( ( abs_abs_int @ A )
        = B )
      = ( ( ord_less_eq_int @ zero_zero_int @ B )
        & ( ( A = B )
          | ( A
            = ( uminus_uminus_int @ B ) ) ) ) ) ).

% abs_eq_iff'
thf(fact_3140_abs__diff__triangle__ineq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer,D: code_integer] : ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ ( plus_p5714425477246183910nteger @ C @ D ) ) ) @ ( plus_p5714425477246183910nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ A @ C ) ) @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ B @ D ) ) ) ) ).

% abs_diff_triangle_ineq
thf(fact_3141_abs__diff__triangle__ineq,axiom,
    ! [A: rat,B: rat,C: rat,D: rat] : ( ord_less_eq_rat @ ( abs_abs_rat @ ( minus_minus_rat @ ( plus_plus_rat @ A @ B ) @ ( plus_plus_rat @ C @ D ) ) ) @ ( plus_plus_rat @ ( abs_abs_rat @ ( minus_minus_rat @ A @ C ) ) @ ( abs_abs_rat @ ( minus_minus_rat @ B @ D ) ) ) ) ).

% abs_diff_triangle_ineq
thf(fact_3142_abs__diff__triangle__ineq,axiom,
    ! [A: int,B: int,C: int,D: int] : ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ ( plus_plus_int @ C @ D ) ) ) @ ( plus_plus_int @ ( abs_abs_int @ ( minus_minus_int @ A @ C ) ) @ ( abs_abs_int @ ( minus_minus_int @ B @ D ) ) ) ) ).

% abs_diff_triangle_ineq
thf(fact_3143_abs__triangle__ineq4,axiom,
    ! [A: code_integer,B: code_integer] : ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ A @ B ) ) @ ( plus_p5714425477246183910nteger @ ( abs_abs_Code_integer @ A ) @ ( abs_abs_Code_integer @ B ) ) ) ).

% abs_triangle_ineq4
thf(fact_3144_abs__triangle__ineq4,axiom,
    ! [A: rat,B: rat] : ( ord_less_eq_rat @ ( abs_abs_rat @ ( minus_minus_rat @ A @ B ) ) @ ( plus_plus_rat @ ( abs_abs_rat @ A ) @ ( abs_abs_rat @ B ) ) ) ).

% abs_triangle_ineq4
thf(fact_3145_abs__triangle__ineq4,axiom,
    ! [A: int,B: int] : ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ A @ B ) ) @ ( plus_plus_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ B ) ) ) ).

% abs_triangle_ineq4
thf(fact_3146_abs__diff__le__iff,axiom,
    ! [X2: code_integer,A: code_integer,R: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ X2 @ A ) ) @ R )
      = ( ( ord_le3102999989581377725nteger @ ( minus_8373710615458151222nteger @ A @ R ) @ X2 )
        & ( ord_le3102999989581377725nteger @ X2 @ ( plus_p5714425477246183910nteger @ A @ R ) ) ) ) ).

% abs_diff_le_iff
thf(fact_3147_abs__diff__le__iff,axiom,
    ! [X2: rat,A: rat,R: rat] :
      ( ( ord_less_eq_rat @ ( abs_abs_rat @ ( minus_minus_rat @ X2 @ A ) ) @ R )
      = ( ( ord_less_eq_rat @ ( minus_minus_rat @ A @ R ) @ X2 )
        & ( ord_less_eq_rat @ X2 @ ( plus_plus_rat @ A @ R ) ) ) ) ).

% abs_diff_le_iff
thf(fact_3148_abs__diff__le__iff,axiom,
    ! [X2: int,A: int,R: int] :
      ( ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ X2 @ A ) ) @ R )
      = ( ( ord_less_eq_int @ ( minus_minus_int @ A @ R ) @ X2 )
        & ( ord_less_eq_int @ X2 @ ( plus_plus_int @ A @ R ) ) ) ) ).

% abs_diff_le_iff
thf(fact_3149_abs__if,axiom,
    ( abs_abs_int
    = ( ^ [A2: int] : ( if_int @ ( ord_less_int @ A2 @ zero_zero_int ) @ ( uminus_uminus_int @ A2 ) @ A2 ) ) ) ).

% abs_if
thf(fact_3150_abs__if,axiom,
    ( abs_abs_Code_integer
    = ( ^ [A2: code_integer] : ( if_Code_integer @ ( ord_le6747313008572928689nteger @ A2 @ zero_z3403309356797280102nteger ) @ ( uminus1351360451143612070nteger @ A2 ) @ A2 ) ) ) ).

% abs_if
thf(fact_3151_abs__if,axiom,
    ( abs_abs_rat
    = ( ^ [A2: rat] : ( if_rat @ ( ord_less_rat @ A2 @ zero_zero_rat ) @ ( uminus_uminus_rat @ A2 ) @ A2 ) ) ) ).

% abs_if
thf(fact_3152_abs__of__neg,axiom,
    ! [A: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( abs_abs_int @ A )
        = ( uminus_uminus_int @ A ) ) ) ).

% abs_of_neg
thf(fact_3153_abs__of__neg,axiom,
    ! [A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger )
     => ( ( abs_abs_Code_integer @ A )
        = ( uminus1351360451143612070nteger @ A ) ) ) ).

% abs_of_neg
thf(fact_3154_abs__of__neg,axiom,
    ! [A: rat] :
      ( ( ord_less_rat @ A @ zero_zero_rat )
     => ( ( abs_abs_rat @ A )
        = ( uminus_uminus_rat @ A ) ) ) ).

% abs_of_neg
thf(fact_3155_abs__if__raw,axiom,
    ( abs_abs_int
    = ( ^ [A2: int] : ( if_int @ ( ord_less_int @ A2 @ zero_zero_int ) @ ( uminus_uminus_int @ A2 ) @ A2 ) ) ) ).

% abs_if_raw
thf(fact_3156_abs__if__raw,axiom,
    ( abs_abs_Code_integer
    = ( ^ [A2: code_integer] : ( if_Code_integer @ ( ord_le6747313008572928689nteger @ A2 @ zero_z3403309356797280102nteger ) @ ( uminus1351360451143612070nteger @ A2 ) @ A2 ) ) ) ).

% abs_if_raw
thf(fact_3157_abs__if__raw,axiom,
    ( abs_abs_rat
    = ( ^ [A2: rat] : ( if_rat @ ( ord_less_rat @ A2 @ zero_zero_rat ) @ ( uminus_uminus_rat @ A2 ) @ A2 ) ) ) ).

% abs_if_raw
thf(fact_3158_abs__diff__less__iff,axiom,
    ! [X2: code_integer,A: code_integer,R: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( abs_abs_Code_integer @ ( minus_8373710615458151222nteger @ X2 @ A ) ) @ R )
      = ( ( ord_le6747313008572928689nteger @ ( minus_8373710615458151222nteger @ A @ R ) @ X2 )
        & ( ord_le6747313008572928689nteger @ X2 @ ( plus_p5714425477246183910nteger @ A @ R ) ) ) ) ).

% abs_diff_less_iff
thf(fact_3159_abs__diff__less__iff,axiom,
    ! [X2: rat,A: rat,R: rat] :
      ( ( ord_less_rat @ ( abs_abs_rat @ ( minus_minus_rat @ X2 @ A ) ) @ R )
      = ( ( ord_less_rat @ ( minus_minus_rat @ A @ R ) @ X2 )
        & ( ord_less_rat @ X2 @ ( plus_plus_rat @ A @ R ) ) ) ) ).

% abs_diff_less_iff
thf(fact_3160_abs__diff__less__iff,axiom,
    ! [X2: int,A: int,R: int] :
      ( ( ord_less_int @ ( abs_abs_int @ ( minus_minus_int @ X2 @ A ) ) @ R )
      = ( ( ord_less_int @ ( minus_minus_int @ A @ R ) @ X2 )
        & ( ord_less_int @ X2 @ ( plus_plus_int @ A @ R ) ) ) ) ).

% abs_diff_less_iff
thf(fact_3161_div__positive,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
     => ( ( ord_le3102999989581377725nteger @ B @ A )
       => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% div_positive
thf(fact_3162_div__positive,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ B )
     => ( ( ord_less_eq_nat @ B @ A )
       => ( ord_less_nat @ zero_zero_nat @ ( divide_divide_nat @ A @ B ) ) ) ) ).

% div_positive
thf(fact_3163_div__positive,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_eq_int @ B @ A )
       => ( ord_less_int @ zero_zero_int @ ( divide_divide_int @ A @ B ) ) ) ) ).

% div_positive
thf(fact_3164_unique__euclidean__semiring__numeral__class_Odiv__less,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ A @ B )
       => ( ( divide6298287555418463151nteger @ A @ B )
          = zero_z3403309356797280102nteger ) ) ) ).

% unique_euclidean_semiring_numeral_class.div_less
thf(fact_3165_unique__euclidean__semiring__numeral__class_Odiv__less,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ A @ B )
       => ( ( divide_divide_nat @ A @ B )
          = zero_zero_nat ) ) ) ).

% unique_euclidean_semiring_numeral_class.div_less
thf(fact_3166_unique__euclidean__semiring__numeral__class_Odiv__less,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ A @ B )
       => ( ( divide_divide_int @ A @ B )
          = zero_zero_int ) ) ) ).

% unique_euclidean_semiring_numeral_class.div_less
thf(fact_3167_divide__nonpos__pos,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ X2 @ zero_zero_rat )
     => ( ( ord_less_rat @ zero_zero_rat @ Y )
       => ( ord_less_eq_rat @ ( divide_divide_rat @ X2 @ Y ) @ zero_zero_rat ) ) ) ).

% divide_nonpos_pos
thf(fact_3168_divide__nonpos__neg,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ X2 @ zero_zero_rat )
     => ( ( ord_less_rat @ Y @ zero_zero_rat )
       => ( ord_less_eq_rat @ zero_zero_rat @ ( divide_divide_rat @ X2 @ Y ) ) ) ) ).

% divide_nonpos_neg
thf(fact_3169_divide__nonneg__pos,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X2 )
     => ( ( ord_less_rat @ zero_zero_rat @ Y )
       => ( ord_less_eq_rat @ zero_zero_rat @ ( divide_divide_rat @ X2 @ Y ) ) ) ) ).

% divide_nonneg_pos
thf(fact_3170_divide__nonneg__neg,axiom,
    ! [X2: rat,Y: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X2 )
     => ( ( ord_less_rat @ Y @ zero_zero_rat )
       => ( ord_less_eq_rat @ ( divide_divide_rat @ X2 @ Y ) @ zero_zero_rat ) ) ) ).

% divide_nonneg_neg
thf(fact_3171_divide__le__cancel,axiom,
    ! [A: rat,C: rat,B: rat] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ A @ C ) @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ A @ B ) )
        & ( ( ord_less_rat @ C @ zero_zero_rat )
         => ( ord_less_eq_rat @ B @ A ) ) ) ) ).

% divide_le_cancel
thf(fact_3172_frac__less2,axiom,
    ! [X2: rat,Y: rat,W2: rat,Z2: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ X2 )
     => ( ( ord_less_eq_rat @ X2 @ Y )
       => ( ( ord_less_rat @ zero_zero_rat @ W2 )
         => ( ( ord_less_rat @ W2 @ Z2 )
           => ( ord_less_rat @ ( divide_divide_rat @ X2 @ Z2 ) @ ( divide_divide_rat @ Y @ W2 ) ) ) ) ) ) ).

% frac_less2
thf(fact_3173_frac__less,axiom,
    ! [X2: rat,Y: rat,W2: rat,Z2: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ X2 )
     => ( ( ord_less_rat @ X2 @ Y )
       => ( ( ord_less_rat @ zero_zero_rat @ W2 )
         => ( ( ord_less_eq_rat @ W2 @ Z2 )
           => ( ord_less_rat @ ( divide_divide_rat @ X2 @ Z2 ) @ ( divide_divide_rat @ Y @ W2 ) ) ) ) ) ) ).

% frac_less
thf(fact_3174_frac__le,axiom,
    ! [Y: rat,X2: rat,W2: rat,Z2: rat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ Y )
     => ( ( ord_less_eq_rat @ X2 @ Y )
       => ( ( ord_less_rat @ zero_zero_rat @ W2 )
         => ( ( ord_less_eq_rat @ W2 @ Z2 )
           => ( ord_less_eq_rat @ ( divide_divide_rat @ X2 @ Z2 ) @ ( divide_divide_rat @ Y @ W2 ) ) ) ) ) ) ).

% frac_le
thf(fact_3175_unique__euclidean__semiring__numeral__class_Odiv__mult2__eq,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
     => ( ( divide6298287555418463151nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) )
        = ( divide6298287555418463151nteger @ ( divide6298287555418463151nteger @ A @ B ) @ C ) ) ) ).

% unique_euclidean_semiring_numeral_class.div_mult2_eq
thf(fact_3176_unique__euclidean__semiring__numeral__class_Odiv__mult2__eq,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ C )
     => ( ( divide_divide_nat @ A @ ( times_times_nat @ B @ C ) )
        = ( divide_divide_nat @ ( divide_divide_nat @ A @ B ) @ C ) ) ) ).

% unique_euclidean_semiring_numeral_class.div_mult2_eq
thf(fact_3177_unique__euclidean__semiring__numeral__class_Odiv__mult2__eq,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ C )
     => ( ( divide_divide_int @ A @ ( times_times_int @ B @ C ) )
        = ( divide_divide_int @ ( divide_divide_int @ A @ B ) @ C ) ) ) ).

% unique_euclidean_semiring_numeral_class.div_mult2_eq
thf(fact_3178_divide__less__eq,axiom,
    ! [B: rat,C: rat,A: rat] :
      ( ( ord_less_rat @ ( divide_divide_rat @ B @ C ) @ A )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ B @ ( times_times_rat @ A @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ B ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ zero_zero_rat @ A ) ) ) ) ) ) ).

% divide_less_eq
thf(fact_3179_less__divide__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ B ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ B @ ( times_times_rat @ A @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ A @ zero_zero_rat ) ) ) ) ) ) ).

% less_divide_eq
thf(fact_3180_neg__divide__less__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_rat @ ( divide_divide_rat @ B @ C ) @ A )
        = ( ord_less_rat @ ( times_times_rat @ A @ C ) @ B ) ) ) ).

% neg_divide_less_eq
thf(fact_3181_neg__less__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_rat @ A @ ( divide_divide_rat @ B @ C ) )
        = ( ord_less_rat @ B @ ( times_times_rat @ A @ C ) ) ) ) ).

% neg_less_divide_eq
thf(fact_3182_pos__divide__less__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_rat @ ( divide_divide_rat @ B @ C ) @ A )
        = ( ord_less_rat @ B @ ( times_times_rat @ A @ C ) ) ) ) ).

% pos_divide_less_eq
thf(fact_3183_pos__less__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_rat @ A @ ( divide_divide_rat @ B @ C ) )
        = ( ord_less_rat @ ( times_times_rat @ A @ C ) @ B ) ) ) ).

% pos_less_divide_eq
thf(fact_3184_mult__imp__div__pos__less,axiom,
    ! [Y: rat,X2: rat,Z2: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Y )
     => ( ( ord_less_rat @ X2 @ ( times_times_rat @ Z2 @ Y ) )
       => ( ord_less_rat @ ( divide_divide_rat @ X2 @ Y ) @ Z2 ) ) ) ).

% mult_imp_div_pos_less
thf(fact_3185_mult__imp__less__div__pos,axiom,
    ! [Y: rat,Z2: rat,X2: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Y )
     => ( ( ord_less_rat @ ( times_times_rat @ Z2 @ Y ) @ X2 )
       => ( ord_less_rat @ Z2 @ ( divide_divide_rat @ X2 @ Y ) ) ) ) ).

% mult_imp_less_div_pos
thf(fact_3186_divide__strict__left__mono,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_rat @ B @ A )
     => ( ( ord_less_rat @ zero_zero_rat @ C )
       => ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
         => ( ord_less_rat @ ( divide_divide_rat @ C @ A ) @ ( divide_divide_rat @ C @ B ) ) ) ) ) ).

% divide_strict_left_mono
thf(fact_3187_divide__strict__left__mono__neg,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_rat @ C @ zero_zero_rat )
       => ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
         => ( ord_less_rat @ ( divide_divide_rat @ C @ A ) @ ( divide_divide_rat @ C @ B ) ) ) ) ) ).

% divide_strict_left_mono_neg
thf(fact_3188_less__divide__eq__1,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_rat @ one_one_rat @ ( divide_divide_rat @ B @ A ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_rat @ A @ B ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_rat @ B @ A ) ) ) ) ).

% less_divide_eq_1
thf(fact_3189_divide__less__eq__1,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_rat @ ( divide_divide_rat @ B @ A ) @ one_one_rat )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_rat @ B @ A ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_rat @ A @ B ) )
        | ( A = zero_zero_rat ) ) ) ).

% divide_less_eq_1
thf(fact_3190_add__divide__eq__if__simps_I2_J,axiom,
    ! [Z2: rat,A: rat,B: rat] :
      ( ( ( Z2 = zero_zero_rat )
       => ( ( plus_plus_rat @ ( divide_divide_rat @ A @ Z2 ) @ B )
          = B ) )
      & ( ( Z2 != zero_zero_rat )
       => ( ( plus_plus_rat @ ( divide_divide_rat @ A @ Z2 ) @ B )
          = ( divide_divide_rat @ ( plus_plus_rat @ A @ ( times_times_rat @ B @ Z2 ) ) @ Z2 ) ) ) ) ).

% add_divide_eq_if_simps(2)
thf(fact_3191_add__divide__eq__if__simps_I1_J,axiom,
    ! [Z2: rat,A: rat,B: rat] :
      ( ( ( Z2 = zero_zero_rat )
       => ( ( plus_plus_rat @ A @ ( divide_divide_rat @ B @ Z2 ) )
          = A ) )
      & ( ( Z2 != zero_zero_rat )
       => ( ( plus_plus_rat @ A @ ( divide_divide_rat @ B @ Z2 ) )
          = ( divide_divide_rat @ ( plus_plus_rat @ ( times_times_rat @ A @ Z2 ) @ B ) @ Z2 ) ) ) ) ).

% add_divide_eq_if_simps(1)
thf(fact_3192_add__frac__eq,axiom,
    ! [Y: rat,Z2: rat,X2: rat,W2: rat] :
      ( ( Y != zero_zero_rat )
     => ( ( Z2 != zero_zero_rat )
       => ( ( plus_plus_rat @ ( divide_divide_rat @ X2 @ Y ) @ ( divide_divide_rat @ W2 @ Z2 ) )
          = ( divide_divide_rat @ ( plus_plus_rat @ ( times_times_rat @ X2 @ Z2 ) @ ( times_times_rat @ W2 @ Y ) ) @ ( times_times_rat @ Y @ Z2 ) ) ) ) ) ).

% add_frac_eq
thf(fact_3193_add__frac__num,axiom,
    ! [Y: rat,X2: rat,Z2: rat] :
      ( ( Y != zero_zero_rat )
     => ( ( plus_plus_rat @ ( divide_divide_rat @ X2 @ Y ) @ Z2 )
        = ( divide_divide_rat @ ( plus_plus_rat @ X2 @ ( times_times_rat @ Z2 @ Y ) ) @ Y ) ) ) ).

% add_frac_num
thf(fact_3194_add__num__frac,axiom,
    ! [Y: rat,Z2: rat,X2: rat] :
      ( ( Y != zero_zero_rat )
     => ( ( plus_plus_rat @ Z2 @ ( divide_divide_rat @ X2 @ Y ) )
        = ( divide_divide_rat @ ( plus_plus_rat @ X2 @ ( times_times_rat @ Z2 @ Y ) ) @ Y ) ) ) ).

% add_num_frac
thf(fact_3195_add__divide__eq__iff,axiom,
    ! [Z2: rat,X2: rat,Y: rat] :
      ( ( Z2 != zero_zero_rat )
     => ( ( plus_plus_rat @ X2 @ ( divide_divide_rat @ Y @ Z2 ) )
        = ( divide_divide_rat @ ( plus_plus_rat @ ( times_times_rat @ X2 @ Z2 ) @ Y ) @ Z2 ) ) ) ).

% add_divide_eq_iff
thf(fact_3196_divide__add__eq__iff,axiom,
    ! [Z2: rat,X2: rat,Y: rat] :
      ( ( Z2 != zero_zero_rat )
     => ( ( plus_plus_rat @ ( divide_divide_rat @ X2 @ Z2 ) @ Y )
        = ( divide_divide_rat @ ( plus_plus_rat @ X2 @ ( times_times_rat @ Y @ Z2 ) ) @ Z2 ) ) ) ).

% divide_add_eq_iff
thf(fact_3197_divide__diff__eq__iff,axiom,
    ! [Z2: rat,X2: rat,Y: rat] :
      ( ( Z2 != zero_zero_rat )
     => ( ( minus_minus_rat @ ( divide_divide_rat @ X2 @ Z2 ) @ Y )
        = ( divide_divide_rat @ ( minus_minus_rat @ X2 @ ( times_times_rat @ Y @ Z2 ) ) @ Z2 ) ) ) ).

% divide_diff_eq_iff
thf(fact_3198_diff__divide__eq__iff,axiom,
    ! [Z2: rat,X2: rat,Y: rat] :
      ( ( Z2 != zero_zero_rat )
     => ( ( minus_minus_rat @ X2 @ ( divide_divide_rat @ Y @ Z2 ) )
        = ( divide_divide_rat @ ( minus_minus_rat @ ( times_times_rat @ X2 @ Z2 ) @ Y ) @ Z2 ) ) ) ).

% diff_divide_eq_iff
thf(fact_3199_diff__frac__eq,axiom,
    ! [Y: rat,Z2: rat,X2: rat,W2: rat] :
      ( ( Y != zero_zero_rat )
     => ( ( Z2 != zero_zero_rat )
       => ( ( minus_minus_rat @ ( divide_divide_rat @ X2 @ Y ) @ ( divide_divide_rat @ W2 @ Z2 ) )
          = ( divide_divide_rat @ ( minus_minus_rat @ ( times_times_rat @ X2 @ Z2 ) @ ( times_times_rat @ W2 @ Y ) ) @ ( times_times_rat @ Y @ Z2 ) ) ) ) ) ).

% diff_frac_eq
thf(fact_3200_add__divide__eq__if__simps_I4_J,axiom,
    ! [Z2: rat,A: rat,B: rat] :
      ( ( ( Z2 = zero_zero_rat )
       => ( ( minus_minus_rat @ A @ ( divide_divide_rat @ B @ Z2 ) )
          = A ) )
      & ( ( Z2 != zero_zero_rat )
       => ( ( minus_minus_rat @ A @ ( divide_divide_rat @ B @ Z2 ) )
          = ( divide_divide_rat @ ( minus_minus_rat @ ( times_times_rat @ A @ Z2 ) @ B ) @ Z2 ) ) ) ) ).

% add_divide_eq_if_simps(4)
thf(fact_3201_less__half__sum,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ord_less_rat @ A @ ( divide_divide_rat @ ( plus_plus_rat @ A @ B ) @ ( plus_plus_rat @ one_one_rat @ one_one_rat ) ) ) ) ).

% less_half_sum
thf(fact_3202_gt__half__sum,axiom,
    ! [A: rat,B: rat] :
      ( ( ord_less_rat @ A @ B )
     => ( ord_less_rat @ ( divide_divide_rat @ ( plus_plus_rat @ A @ B ) @ ( plus_plus_rat @ one_one_rat @ one_one_rat ) ) @ B ) ) ).

% gt_half_sum
thf(fact_3203_eq__minus__divide__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( A
        = ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) )
      = ( ( ( C != zero_zero_rat )
         => ( ( times_times_rat @ A @ C )
            = ( uminus_uminus_rat @ B ) ) )
        & ( ( C = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% eq_minus_divide_eq
thf(fact_3204_minus__divide__eq__eq,axiom,
    ! [B: rat,C: rat,A: rat] :
      ( ( ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) )
        = A )
      = ( ( ( C != zero_zero_rat )
         => ( ( uminus_uminus_rat @ B )
            = ( times_times_rat @ A @ C ) ) )
        & ( ( C = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% minus_divide_eq_eq
thf(fact_3205_nonzero__neg__divide__eq__eq,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( B != zero_zero_rat )
     => ( ( ( uminus_uminus_rat @ ( divide_divide_rat @ A @ B ) )
          = C )
        = ( ( uminus_uminus_rat @ A )
          = ( times_times_rat @ C @ B ) ) ) ) ).

% nonzero_neg_divide_eq_eq
thf(fact_3206_nonzero__neg__divide__eq__eq2,axiom,
    ! [B: rat,C: rat,A: rat] :
      ( ( B != zero_zero_rat )
     => ( ( C
          = ( uminus_uminus_rat @ ( divide_divide_rat @ A @ B ) ) )
        = ( ( times_times_rat @ C @ B )
          = ( uminus_uminus_rat @ A ) ) ) ) ).

% nonzero_neg_divide_eq_eq2
thf(fact_3207_divide__eq__minus__1__iff,axiom,
    ! [A: rat,B: rat] :
      ( ( ( divide_divide_rat @ A @ B )
        = ( uminus_uminus_rat @ one_one_rat ) )
      = ( ( B != zero_zero_rat )
        & ( A
          = ( uminus_uminus_rat @ B ) ) ) ) ).

% divide_eq_minus_1_iff
thf(fact_3208_zabs__def,axiom,
    ( abs_abs_int
    = ( ^ [I2: int] : ( if_int @ ( ord_less_int @ I2 @ zero_zero_int ) @ ( uminus_uminus_int @ I2 ) @ I2 ) ) ) ).

% zabs_def
thf(fact_3209_nat__mult__div__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( divide_divide_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( divide_divide_nat @ M @ N ) ) ) ).

% nat_mult_div_cancel1
thf(fact_3210_nat__abs__mult__distrib,axiom,
    ! [W2: int,Z2: int] :
      ( ( nat2 @ ( abs_abs_int @ ( times_times_int @ W2 @ Z2 ) ) )
      = ( times_times_nat @ ( nat2 @ ( abs_abs_int @ W2 ) ) @ ( nat2 @ ( abs_abs_int @ Z2 ) ) ) ) ).

% nat_abs_mult_distrib
thf(fact_3211_nonneg1__imp__zdiv__pos__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ zero_zero_int @ ( divide_divide_int @ A @ B ) )
        = ( ( ord_less_eq_int @ B @ A )
          & ( ord_less_int @ zero_zero_int @ B ) ) ) ) ).

% nonneg1_imp_zdiv_pos_iff
thf(fact_3212_pos__imp__zdiv__nonneg__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_eq_int @ zero_zero_int @ ( divide_divide_int @ A @ B ) )
        = ( ord_less_eq_int @ zero_zero_int @ A ) ) ) ).

% pos_imp_zdiv_nonneg_iff
thf(fact_3213_neg__imp__zdiv__nonneg__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ B @ zero_zero_int )
     => ( ( ord_less_eq_int @ zero_zero_int @ ( divide_divide_int @ A @ B ) )
        = ( ord_less_eq_int @ A @ zero_zero_int ) ) ) ).

% neg_imp_zdiv_nonneg_iff
thf(fact_3214_pos__imp__zdiv__pos__iff,axiom,
    ! [K: int,I: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ( ( ord_less_int @ zero_zero_int @ ( divide_divide_int @ I @ K ) )
        = ( ord_less_eq_int @ K @ I ) ) ) ).

% pos_imp_zdiv_pos_iff
thf(fact_3215_div__nonpos__pos__le0,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ord_less_eq_int @ ( divide_divide_int @ A @ B ) @ zero_zero_int ) ) ) ).

% div_nonpos_pos_le0
thf(fact_3216_div__nonneg__neg__le0,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_eq_int @ ( divide_divide_int @ A @ B ) @ zero_zero_int ) ) ) ).

% div_nonneg_neg_le0
thf(fact_3217_div__positive__int,axiom,
    ! [L: int,K: int] :
      ( ( ord_less_eq_int @ L @ K )
     => ( ( ord_less_int @ zero_zero_int @ L )
       => ( ord_less_int @ zero_zero_int @ ( divide_divide_int @ K @ L ) ) ) ) ).

% div_positive_int
thf(fact_3218_div__int__pos__iff,axiom,
    ! [K: int,L: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( divide_divide_int @ K @ L ) )
      = ( ( K = zero_zero_int )
        | ( L = zero_zero_int )
        | ( ( ord_less_eq_int @ zero_zero_int @ K )
          & ( ord_less_eq_int @ zero_zero_int @ L ) )
        | ( ( ord_less_int @ K @ zero_zero_int )
          & ( ord_less_int @ L @ zero_zero_int ) ) ) ) ).

% div_int_pos_iff
thf(fact_3219_zdiv__mono2__neg,axiom,
    ! [A: int,B5: int,B: int] :
      ( ( ord_less_int @ A @ zero_zero_int )
     => ( ( ord_less_int @ zero_zero_int @ B5 )
       => ( ( ord_less_eq_int @ B5 @ B )
         => ( ord_less_eq_int @ ( divide_divide_int @ A @ B5 ) @ ( divide_divide_int @ A @ B ) ) ) ) ) ).

% zdiv_mono2_neg
thf(fact_3220_zdiv__mono1__neg,axiom,
    ! [A: int,A5: int,B: int] :
      ( ( ord_less_eq_int @ A @ A5 )
     => ( ( ord_less_int @ B @ zero_zero_int )
       => ( ord_less_eq_int @ ( divide_divide_int @ A5 @ B ) @ ( divide_divide_int @ A @ B ) ) ) ) ).

% zdiv_mono1_neg
thf(fact_3221_zdiv__eq__0__iff,axiom,
    ! [I: int,K: int] :
      ( ( ( divide_divide_int @ I @ K )
        = zero_zero_int )
      = ( ( K = zero_zero_int )
        | ( ( ord_less_eq_int @ zero_zero_int @ I )
          & ( ord_less_int @ I @ K ) )
        | ( ( ord_less_eq_int @ I @ zero_zero_int )
          & ( ord_less_int @ K @ I ) ) ) ) ).

% zdiv_eq_0_iff
thf(fact_3222_zdiv__mono2,axiom,
    ! [A: int,B5: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ zero_zero_int @ B5 )
       => ( ( ord_less_eq_int @ B5 @ B )
         => ( ord_less_eq_int @ ( divide_divide_int @ A @ B ) @ ( divide_divide_int @ A @ B5 ) ) ) ) ) ).

% zdiv_mono2
thf(fact_3223_zdiv__mono1,axiom,
    ! [A: int,A5: int,B: int] :
      ( ( ord_less_eq_int @ A @ A5 )
     => ( ( ord_less_int @ zero_zero_int @ B )
       => ( ord_less_eq_int @ ( divide_divide_int @ A @ B ) @ ( divide_divide_int @ A5 @ B ) ) ) ) ).

% zdiv_mono1
thf(fact_3224_int__div__less__self,axiom,
    ! [X2: int,K: int] :
      ( ( ord_less_int @ zero_zero_int @ X2 )
     => ( ( ord_less_int @ one_one_int @ K )
       => ( ord_less_int @ ( divide_divide_int @ X2 @ K ) @ X2 ) ) ) ).

% int_div_less_self
thf(fact_3225_power__int__diff,axiom,
    ! [X2: rat,M: int,N: int] :
      ( ( ( X2 != zero_zero_rat )
        | ( M != N ) )
     => ( ( power_int_rat @ X2 @ ( minus_minus_int @ M @ N ) )
        = ( divide_divide_rat @ ( power_int_rat @ X2 @ M ) @ ( power_int_rat @ X2 @ N ) ) ) ) ).

% power_int_diff
thf(fact_3226_Ints__odd__nonzero,axiom,
    ! [A: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( ( plus_plus_int @ ( plus_plus_int @ one_one_int @ A ) @ A )
       != zero_zero_int ) ) ).

% Ints_odd_nonzero
thf(fact_3227_Ints__odd__nonzero,axiom,
    ! [A: code_integer] :
      ( ( member_Code_integer @ A @ ring_11222124179247155820nteger )
     => ( ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ one_one_Code_integer @ A ) @ A )
       != zero_z3403309356797280102nteger ) ) ).

% Ints_odd_nonzero
thf(fact_3228_Ints__odd__nonzero,axiom,
    ! [A: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( ( plus_plus_rat @ ( plus_plus_rat @ one_one_rat @ A ) @ A )
       != zero_zero_rat ) ) ).

% Ints_odd_nonzero
thf(fact_3229_abs__add__one__gt__zero,axiom,
    ! [X2: code_integer] : ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( abs_abs_Code_integer @ X2 ) ) ) ).

% abs_add_one_gt_zero
thf(fact_3230_abs__add__one__gt__zero,axiom,
    ! [X2: rat] : ( ord_less_rat @ zero_zero_rat @ ( plus_plus_rat @ one_one_rat @ ( abs_abs_rat @ X2 ) ) ) ).

% abs_add_one_gt_zero
thf(fact_3231_abs__add__one__gt__zero,axiom,
    ! [X2: int] : ( ord_less_int @ zero_zero_int @ ( plus_plus_int @ one_one_int @ ( abs_abs_int @ X2 ) ) ) ).

% abs_add_one_gt_zero
thf(fact_3232_of__int__leD,axiom,
    ! [N: int,X2: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( abs_abs_Code_integer @ ( ring_18347121197199848620nteger @ N ) ) @ X2 )
     => ( ( N = zero_zero_int )
        | ( ord_le3102999989581377725nteger @ one_one_Code_integer @ X2 ) ) ) ).

% of_int_leD
thf(fact_3233_of__int__leD,axiom,
    ! [N: int,X2: rat] :
      ( ( ord_less_eq_rat @ ( abs_abs_rat @ ( ring_1_of_int_rat @ N ) ) @ X2 )
     => ( ( N = zero_zero_int )
        | ( ord_less_eq_rat @ one_one_rat @ X2 ) ) ) ).

% of_int_leD
thf(fact_3234_of__int__leD,axiom,
    ! [N: int,X2: int] :
      ( ( ord_less_eq_int @ ( abs_abs_int @ ( ring_1_of_int_int @ N ) ) @ X2 )
     => ( ( N = zero_zero_int )
        | ( ord_less_eq_int @ one_one_int @ X2 ) ) ) ).

% of_int_leD
thf(fact_3235_of__int__lessD,axiom,
    ! [N: int,X2: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( abs_abs_Code_integer @ ( ring_18347121197199848620nteger @ N ) ) @ X2 )
     => ( ( N = zero_zero_int )
        | ( ord_le6747313008572928689nteger @ one_one_Code_integer @ X2 ) ) ) ).

% of_int_lessD
thf(fact_3236_of__int__lessD,axiom,
    ! [N: int,X2: rat] :
      ( ( ord_less_rat @ ( abs_abs_rat @ ( ring_1_of_int_rat @ N ) ) @ X2 )
     => ( ( N = zero_zero_int )
        | ( ord_less_rat @ one_one_rat @ X2 ) ) ) ).

% of_int_lessD
thf(fact_3237_of__int__lessD,axiom,
    ! [N: int,X2: int] :
      ( ( ord_less_int @ ( abs_abs_int @ ( ring_1_of_int_int @ N ) ) @ X2 )
     => ( ( N = zero_zero_int )
        | ( ord_less_int @ one_one_int @ X2 ) ) ) ).

% of_int_lessD
thf(fact_3238_divide__le__eq,axiom,
    ! [B: rat,C: rat,A: rat] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ C ) @ A )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ B @ ( times_times_rat @ A @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ B ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ) ) ) ) ).

% divide_le_eq
thf(fact_3239_le__divide__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ B ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ B @ ( times_times_rat @ A @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ) ) ) ) ).

% le_divide_eq
thf(fact_3240_divide__left__mono,axiom,
    ! [B: rat,A: rat,C: rat] :
      ( ( ord_less_eq_rat @ B @ A )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ C )
       => ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
         => ( ord_less_eq_rat @ ( divide_divide_rat @ C @ A ) @ ( divide_divide_rat @ C @ B ) ) ) ) ) ).

% divide_left_mono
thf(fact_3241_neg__divide__le__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ C ) @ A )
        = ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ B ) ) ) ).

% neg_divide_le_eq
thf(fact_3242_neg__le__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ A @ ( divide_divide_rat @ B @ C ) )
        = ( ord_less_eq_rat @ B @ ( times_times_rat @ A @ C ) ) ) ) ).

% neg_le_divide_eq
thf(fact_3243_pos__divide__le__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ C ) @ A )
        = ( ord_less_eq_rat @ B @ ( times_times_rat @ A @ C ) ) ) ) ).

% pos_divide_le_eq
thf(fact_3244_pos__le__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_eq_rat @ A @ ( divide_divide_rat @ B @ C ) )
        = ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ B ) ) ) ).

% pos_le_divide_eq
thf(fact_3245_mult__imp__div__pos__le,axiom,
    ! [Y: rat,X2: rat,Z2: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Y )
     => ( ( ord_less_eq_rat @ X2 @ ( times_times_rat @ Z2 @ Y ) )
       => ( ord_less_eq_rat @ ( divide_divide_rat @ X2 @ Y ) @ Z2 ) ) ) ).

% mult_imp_div_pos_le
thf(fact_3246_mult__imp__le__div__pos,axiom,
    ! [Y: rat,Z2: rat,X2: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Y )
     => ( ( ord_less_eq_rat @ ( times_times_rat @ Z2 @ Y ) @ X2 )
       => ( ord_less_eq_rat @ Z2 @ ( divide_divide_rat @ X2 @ Y ) ) ) ) ).

% mult_imp_le_div_pos
thf(fact_3247_divide__left__mono__neg,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ C @ zero_zero_rat )
       => ( ( ord_less_rat @ zero_zero_rat @ ( times_times_rat @ A @ B ) )
         => ( ord_less_eq_rat @ ( divide_divide_rat @ C @ A ) @ ( divide_divide_rat @ C @ B ) ) ) ) ) ).

% divide_left_mono_neg
thf(fact_3248_le__divide__eq__1,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_eq_rat @ one_one_rat @ ( divide_divide_rat @ B @ A ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ A @ B ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ B @ A ) ) ) ) ).

% le_divide_eq_1
thf(fact_3249_divide__le__eq__1,axiom,
    ! [B: rat,A: rat] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ A ) @ one_one_rat )
      = ( ( ( ord_less_rat @ zero_zero_rat @ A )
          & ( ord_less_eq_rat @ B @ A ) )
        | ( ( ord_less_rat @ A @ zero_zero_rat )
          & ( ord_less_eq_rat @ A @ B ) )
        | ( A = zero_zero_rat ) ) ) ).

% divide_le_eq_1
thf(fact_3250_frac__le__eq,axiom,
    ! [Y: rat,Z2: rat,X2: rat,W2: rat] :
      ( ( Y != zero_zero_rat )
     => ( ( Z2 != zero_zero_rat )
       => ( ( ord_less_eq_rat @ ( divide_divide_rat @ X2 @ Y ) @ ( divide_divide_rat @ W2 @ Z2 ) )
          = ( ord_less_eq_rat @ ( divide_divide_rat @ ( minus_minus_rat @ ( times_times_rat @ X2 @ Z2 ) @ ( times_times_rat @ W2 @ Y ) ) @ ( times_times_rat @ Y @ Z2 ) ) @ zero_zero_rat ) ) ) ) ).

% frac_le_eq
thf(fact_3251_frac__less__eq,axiom,
    ! [Y: rat,Z2: rat,X2: rat,W2: rat] :
      ( ( Y != zero_zero_rat )
     => ( ( Z2 != zero_zero_rat )
       => ( ( ord_less_rat @ ( divide_divide_rat @ X2 @ Y ) @ ( divide_divide_rat @ W2 @ Z2 ) )
          = ( ord_less_rat @ ( divide_divide_rat @ ( minus_minus_rat @ ( times_times_rat @ X2 @ Z2 ) @ ( times_times_rat @ W2 @ Y ) ) @ ( times_times_rat @ Y @ Z2 ) ) @ zero_zero_rat ) ) ) ) ).

% frac_less_eq
thf(fact_3252_pos__minus__divide__less__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) @ A )
        = ( ord_less_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% pos_minus_divide_less_eq
thf(fact_3253_pos__less__minus__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_rat @ A @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) )
        = ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) ) ) ).

% pos_less_minus_divide_eq
thf(fact_3254_neg__minus__divide__less__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) @ A )
        = ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) ) ) ).

% neg_minus_divide_less_eq
thf(fact_3255_neg__less__minus__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_rat @ A @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) )
        = ( ord_less_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% neg_less_minus_divide_eq
thf(fact_3256_minus__divide__less__eq,axiom,
    ! [B: rat,C: rat,A: rat] :
      ( ( ord_less_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) @ A )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ zero_zero_rat @ A ) ) ) ) ) ) ).

% minus_divide_less_eq
thf(fact_3257_less__minus__divide__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_rat @ A @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ A @ zero_zero_rat ) ) ) ) ) ) ).

% less_minus_divide_eq
thf(fact_3258_minus__divide__add__eq__iff,axiom,
    ! [Z2: rat,X2: rat,Y: rat] :
      ( ( Z2 != zero_zero_rat )
     => ( ( plus_plus_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ X2 @ Z2 ) ) @ Y )
        = ( divide_divide_rat @ ( plus_plus_rat @ ( uminus_uminus_rat @ X2 ) @ ( times_times_rat @ Y @ Z2 ) ) @ Z2 ) ) ) ).

% minus_divide_add_eq_iff
thf(fact_3259_add__divide__eq__if__simps_I3_J,axiom,
    ! [Z2: rat,A: rat,B: rat] :
      ( ( ( Z2 = zero_zero_rat )
       => ( ( plus_plus_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ A @ Z2 ) ) @ B )
          = B ) )
      & ( ( Z2 != zero_zero_rat )
       => ( ( plus_plus_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ A @ Z2 ) ) @ B )
          = ( divide_divide_rat @ ( plus_plus_rat @ ( uminus_uminus_rat @ A ) @ ( times_times_rat @ B @ Z2 ) ) @ Z2 ) ) ) ) ).

% add_divide_eq_if_simps(3)
thf(fact_3260_add__divide__eq__if__simps_I6_J,axiom,
    ! [Z2: rat,A: rat,B: rat] :
      ( ( ( Z2 = zero_zero_rat )
       => ( ( minus_minus_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ A @ Z2 ) ) @ B )
          = ( uminus_uminus_rat @ B ) ) )
      & ( ( Z2 != zero_zero_rat )
       => ( ( minus_minus_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ A @ Z2 ) ) @ B )
          = ( divide_divide_rat @ ( minus_minus_rat @ ( uminus_uminus_rat @ A ) @ ( times_times_rat @ B @ Z2 ) ) @ Z2 ) ) ) ) ).

% add_divide_eq_if_simps(6)
thf(fact_3261_add__divide__eq__if__simps_I5_J,axiom,
    ! [Z2: rat,A: rat,B: rat] :
      ( ( ( Z2 = zero_zero_rat )
       => ( ( minus_minus_rat @ ( divide_divide_rat @ A @ Z2 ) @ B )
          = ( uminus_uminus_rat @ B ) ) )
      & ( ( Z2 != zero_zero_rat )
       => ( ( minus_minus_rat @ ( divide_divide_rat @ A @ Z2 ) @ B )
          = ( divide_divide_rat @ ( minus_minus_rat @ A @ ( times_times_rat @ B @ Z2 ) ) @ Z2 ) ) ) ) ).

% add_divide_eq_if_simps(5)
thf(fact_3262_minus__divide__diff__eq__iff,axiom,
    ! [Z2: rat,X2: rat,Y: rat] :
      ( ( Z2 != zero_zero_rat )
     => ( ( minus_minus_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ X2 @ Z2 ) ) @ Y )
        = ( divide_divide_rat @ ( minus_minus_rat @ ( uminus_uminus_rat @ X2 ) @ ( times_times_rat @ Y @ Z2 ) ) @ Z2 ) ) ) ).

% minus_divide_diff_eq_iff
thf(fact_3263_nat__abs__triangle__ineq,axiom,
    ! [K: int,L: int] : ( ord_less_eq_nat @ ( nat2 @ ( abs_abs_int @ ( plus_plus_int @ K @ L ) ) ) @ ( plus_plus_nat @ ( nat2 @ ( abs_abs_int @ K ) ) @ ( nat2 @ ( abs_abs_int @ L ) ) ) ) ).

% nat_abs_triangle_ineq
thf(fact_3264_div__geq,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ~ ( ord_less_nat @ M @ N )
       => ( ( divide_divide_nat @ M @ N )
          = ( suc @ ( divide_divide_nat @ ( minus_minus_nat @ M @ N ) @ N ) ) ) ) ) ).

% div_geq
thf(fact_3265_verit__less__mono__div__int2,axiom,
    ! [A4: int,B4: int,N: int] :
      ( ( ord_less_eq_int @ A4 @ B4 )
     => ( ( ord_less_int @ zero_zero_int @ ( uminus_uminus_int @ N ) )
       => ( ord_less_eq_int @ ( divide_divide_int @ B4 @ N ) @ ( divide_divide_int @ A4 @ N ) ) ) ) ).

% verit_less_mono_div_int2
thf(fact_3266_div__eq__minus1,axiom,
    ! [B: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( divide_divide_int @ ( uminus_uminus_int @ one_one_int ) @ B )
        = ( uminus_uminus_int @ one_one_int ) ) ) ).

% div_eq_minus1
thf(fact_3267_Ints__odd__less__0,axiom,
    ! [A: code_integer] :
      ( ( member_Code_integer @ A @ ring_11222124179247155820nteger )
     => ( ( ord_le6747313008572928689nteger @ ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ one_one_Code_integer @ A ) @ A ) @ zero_z3403309356797280102nteger )
        = ( ord_le6747313008572928689nteger @ A @ zero_z3403309356797280102nteger ) ) ) ).

% Ints_odd_less_0
thf(fact_3268_Ints__odd__less__0,axiom,
    ! [A: rat] :
      ( ( member_rat @ A @ ring_1_Ints_rat )
     => ( ( ord_less_rat @ ( plus_plus_rat @ ( plus_plus_rat @ one_one_rat @ A ) @ A ) @ zero_zero_rat )
        = ( ord_less_rat @ A @ zero_zero_rat ) ) ) ).

% Ints_odd_less_0
thf(fact_3269_Ints__odd__less__0,axiom,
    ! [A: int] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( ( ord_less_int @ ( plus_plus_int @ ( plus_plus_int @ one_one_int @ A ) @ A ) @ zero_zero_int )
        = ( ord_less_int @ A @ zero_zero_int ) ) ) ).

% Ints_odd_less_0
thf(fact_3270_scaling__mono,axiom,
    ! [U: rat,V: rat,R: rat,S: rat] :
      ( ( ord_less_eq_rat @ U @ V )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ R )
       => ( ( ord_less_eq_rat @ R @ S )
         => ( ord_less_eq_rat @ ( plus_plus_rat @ U @ ( divide_divide_rat @ ( times_times_rat @ R @ ( minus_minus_rat @ V @ U ) ) @ S ) ) @ V ) ) ) ) ).

% scaling_mono
thf(fact_3271_pos__minus__divide__le__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) @ A )
        = ( ord_less_eq_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% pos_minus_divide_le_eq
thf(fact_3272_pos__le__minus__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ C )
     => ( ( ord_less_eq_rat @ A @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) )
        = ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) ) ) ).

% pos_le_minus_divide_eq
thf(fact_3273_neg__minus__divide__le__eq,axiom,
    ! [C: rat,B: rat,A: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) @ A )
        = ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) ) ) ).

% neg_minus_divide_le_eq
thf(fact_3274_neg__le__minus__divide__eq,axiom,
    ! [C: rat,A: rat,B: rat] :
      ( ( ord_less_rat @ C @ zero_zero_rat )
     => ( ( ord_less_eq_rat @ A @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) )
        = ( ord_less_eq_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) ) ) ).

% neg_le_minus_divide_eq
thf(fact_3275_minus__divide__le__eq,axiom,
    ! [B: rat,C: rat,A: rat] :
      ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) @ A )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ zero_zero_rat @ A ) ) ) ) ) ) ).

% minus_divide_le_eq
thf(fact_3276_le__minus__divide__eq,axiom,
    ! [A: rat,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ A @ ( uminus_uminus_rat @ ( divide_divide_rat @ B @ C ) ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ ( times_times_rat @ A @ C ) @ ( uminus_uminus_rat @ B ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ ( uminus_uminus_rat @ B ) @ ( times_times_rat @ A @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ A @ zero_zero_rat ) ) ) ) ) ) ).

% le_minus_divide_eq
thf(fact_3277_nat__approx__posE,axiom,
    ! [E: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ E )
     => ~ ! [N2: nat] :
            ~ ( ord_less_rat @ ( divide_divide_rat @ one_one_rat @ ( semiri681578069525770553at_rat @ ( suc @ N2 ) ) ) @ E ) ) ).

% nat_approx_posE
thf(fact_3278_nat__abs__int__diff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ord_less_eq_nat @ A @ B )
       => ( ( nat2 @ ( abs_abs_int @ ( minus_minus_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) )
          = ( minus_minus_nat @ B @ A ) ) )
      & ( ~ ( ord_less_eq_nat @ A @ B )
       => ( ( nat2 @ ( abs_abs_int @ ( minus_minus_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) )
          = ( minus_minus_nat @ A @ B ) ) ) ) ).

% nat_abs_int_diff
thf(fact_3279_split__zdiv,axiom,
    ! [P: int > $o,N: int,K: int] :
      ( ( P @ ( divide_divide_int @ N @ K ) )
      = ( ( ( K = zero_zero_int )
         => ( P @ zero_zero_int ) )
        & ( ( ord_less_int @ zero_zero_int @ K )
         => ! [I2: int,J3: int] :
              ( ( ( ord_less_eq_int @ zero_zero_int @ J3 )
                & ( ord_less_int @ J3 @ K )
                & ( N
                  = ( plus_plus_int @ ( times_times_int @ K @ I2 ) @ J3 ) ) )
             => ( P @ I2 ) ) )
        & ( ( ord_less_int @ K @ zero_zero_int )
         => ! [I2: int,J3: int] :
              ( ( ( ord_less_int @ K @ J3 )
                & ( ord_less_eq_int @ J3 @ zero_zero_int )
                & ( N
                  = ( plus_plus_int @ ( times_times_int @ K @ I2 ) @ J3 ) ) )
             => ( P @ I2 ) ) ) ) ) ).

% split_zdiv
thf(fact_3280_int__div__neg__eq,axiom,
    ! [A: int,B: int,Q2: int,R: int] :
      ( ( A
        = ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R ) )
     => ( ( ord_less_eq_int @ R @ zero_zero_int )
       => ( ( ord_less_int @ B @ R )
         => ( ( divide_divide_int @ A @ B )
            = Q2 ) ) ) ) ).

% int_div_neg_eq
thf(fact_3281_int__div__pos__eq,axiom,
    ! [A: int,B: int,Q2: int,R: int] :
      ( ( A
        = ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ R )
       => ( ( ord_less_int @ R @ B )
         => ( ( divide_divide_int @ A @ B )
            = Q2 ) ) ) ) ).

% int_div_pos_eq
thf(fact_3282_frac__neg,axiom,
    ! [X2: rat] :
      ( ( ( member_rat @ X2 @ ring_1_Ints_rat )
       => ( ( archimedean_frac_rat @ ( uminus_uminus_rat @ X2 ) )
          = zero_zero_rat ) )
      & ( ~ ( member_rat @ X2 @ ring_1_Ints_rat )
       => ( ( archimedean_frac_rat @ ( uminus_uminus_rat @ X2 ) )
          = ( minus_minus_rat @ one_one_rat @ ( archimedean_frac_rat @ X2 ) ) ) ) ) ).

% frac_neg
thf(fact_3283_nat__intermed__int__val,axiom,
    ! [M: nat,N: nat,F: nat > int,K: int] :
      ( ! [I3: nat] :
          ( ( ( ord_less_eq_nat @ M @ I3 )
            & ( ord_less_nat @ I3 @ N ) )
         => ( ord_less_eq_int @ ( abs_abs_int @ ( minus_minus_int @ ( F @ ( suc @ I3 ) ) @ ( F @ I3 ) ) ) @ one_one_int ) )
     => ( ( ord_less_eq_nat @ M @ N )
       => ( ( ord_less_eq_int @ ( F @ M ) @ K )
         => ( ( ord_less_eq_int @ K @ ( F @ N ) )
           => ? [I3: nat] :
                ( ( ord_less_eq_nat @ M @ I3 )
                & ( ord_less_eq_nat @ I3 @ N )
                & ( ( F @ I3 )
                  = K ) ) ) ) ) ) ).

% nat_intermed_int_val
thf(fact_3284_floor__divide__lower,axiom,
    ! [Q2: rat,P3: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Q2 )
     => ( ord_less_eq_rat @ ( times_times_rat @ ( ring_1_of_int_rat @ ( archim3151403230148437115or_rat @ ( divide_divide_rat @ P3 @ Q2 ) ) ) @ Q2 ) @ P3 ) ) ).

% floor_divide_lower
thf(fact_3285_ceiling__divide__upper,axiom,
    ! [Q2: rat,P3: rat] :
      ( ( ord_less_rat @ zero_zero_rat @ Q2 )
     => ( ord_less_eq_rat @ P3 @ ( times_times_rat @ ( ring_1_of_int_rat @ ( archim2889992004027027881ng_rat @ ( divide_divide_rat @ P3 @ Q2 ) ) ) @ Q2 ) ) ) ).

% ceiling_divide_upper
thf(fact_3286_decr__lemma,axiom,
    ! [D: int,X2: int,Z2: int] :
      ( ( ord_less_int @ zero_zero_int @ D )
     => ( ord_less_int @ ( minus_minus_int @ X2 @ ( times_times_int @ ( plus_plus_int @ ( abs_abs_int @ ( minus_minus_int @ X2 @ Z2 ) ) @ one_one_int ) @ D ) ) @ Z2 ) ) ).

% decr_lemma
thf(fact_3287_incr__lemma,axiom,
    ! [D: int,Z2: int,X2: int] :
      ( ( ord_less_int @ zero_zero_int @ D )
     => ( ord_less_int @ Z2 @ ( plus_plus_int @ X2 @ ( times_times_int @ ( plus_plus_int @ ( abs_abs_int @ ( minus_minus_int @ X2 @ Z2 ) ) @ one_one_int ) @ D ) ) ) ) ).

% incr_lemma
thf(fact_3288_div__pos__geq,axiom,
    ! [L: int,K: int] :
      ( ( ord_less_int @ zero_zero_int @ L )
     => ( ( ord_less_eq_int @ L @ K )
       => ( ( divide_divide_int @ K @ L )
          = ( plus_plus_int @ ( divide_divide_int @ ( minus_minus_int @ K @ L ) @ L ) @ one_one_int ) ) ) ) ).

% div_pos_geq
thf(fact_3289_div__mult__self1,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( B != zero_zero_nat )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ A @ ( times_times_nat @ C @ B ) ) @ B )
        = ( plus_plus_nat @ C @ ( divide_divide_nat @ A @ B ) ) ) ) ).

% div_mult_self1
thf(fact_3290_div__mult__self1,axiom,
    ! [B: int,A: int,C: int] :
      ( ( B != zero_zero_int )
     => ( ( divide_divide_int @ ( plus_plus_int @ A @ ( times_times_int @ C @ B ) ) @ B )
        = ( plus_plus_int @ C @ ( divide_divide_int @ A @ B ) ) ) ) ).

% div_mult_self1
thf(fact_3291_div__mult__self1,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( B != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ A @ ( times_3573771949741848930nteger @ C @ B ) ) @ B )
        = ( plus_p5714425477246183910nteger @ C @ ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% div_mult_self1
thf(fact_3292_div__mult__self1,axiom,
    ! [B: code_natural,A: code_natural,C: code_natural] :
      ( ( B != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ A @ ( times_2397367101498566445atural @ C @ B ) ) @ B )
        = ( plus_p4538020629002901425atural @ C @ ( divide5121882707175180666atural @ A @ B ) ) ) ) ).

% div_mult_self1
thf(fact_3293_div__mult__self2,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( B != zero_zero_nat )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ A @ ( times_times_nat @ B @ C ) ) @ B )
        = ( plus_plus_nat @ C @ ( divide_divide_nat @ A @ B ) ) ) ) ).

% div_mult_self2
thf(fact_3294_div__mult__self2,axiom,
    ! [B: int,A: int,C: int] :
      ( ( B != zero_zero_int )
     => ( ( divide_divide_int @ ( plus_plus_int @ A @ ( times_times_int @ B @ C ) ) @ B )
        = ( plus_plus_int @ C @ ( divide_divide_int @ A @ B ) ) ) ) ).

% div_mult_self2
thf(fact_3295_div__mult__self2,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( B != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) ) @ B )
        = ( plus_p5714425477246183910nteger @ C @ ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% div_mult_self2
thf(fact_3296_div__mult__self2,axiom,
    ! [B: code_natural,A: code_natural,C: code_natural] :
      ( ( B != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ A @ ( times_2397367101498566445atural @ B @ C ) ) @ B )
        = ( plus_p4538020629002901425atural @ C @ ( divide5121882707175180666atural @ A @ B ) ) ) ) ).

% div_mult_self2
thf(fact_3297_div__mult__self3,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( B != zero_zero_nat )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ ( times_times_nat @ C @ B ) @ A ) @ B )
        = ( plus_plus_nat @ C @ ( divide_divide_nat @ A @ B ) ) ) ) ).

% div_mult_self3
thf(fact_3298_div__mult__self3,axiom,
    ! [B: int,C: int,A: int] :
      ( ( B != zero_zero_int )
     => ( ( divide_divide_int @ ( plus_plus_int @ ( times_times_int @ C @ B ) @ A ) @ B )
        = ( plus_plus_int @ C @ ( divide_divide_int @ A @ B ) ) ) ) ).

% div_mult_self3
thf(fact_3299_div__mult__self3,axiom,
    ! [B: code_integer,C: code_integer,A: code_integer] :
      ( ( B != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ C @ B ) @ A ) @ B )
        = ( plus_p5714425477246183910nteger @ C @ ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% div_mult_self3
thf(fact_3300_div__mult__self3,axiom,
    ! [B: code_natural,C: code_natural,A: code_natural] :
      ( ( B != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ C @ B ) @ A ) @ B )
        = ( plus_p4538020629002901425atural @ C @ ( divide5121882707175180666atural @ A @ B ) ) ) ) ).

% div_mult_self3
thf(fact_3301_div__mult__self4,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( B != zero_zero_nat )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ ( times_times_nat @ B @ C ) @ A ) @ B )
        = ( plus_plus_nat @ C @ ( divide_divide_nat @ A @ B ) ) ) ) ).

% div_mult_self4
thf(fact_3302_div__mult__self4,axiom,
    ! [B: int,C: int,A: int] :
      ( ( B != zero_zero_int )
     => ( ( divide_divide_int @ ( plus_plus_int @ ( times_times_int @ B @ C ) @ A ) @ B )
        = ( plus_plus_int @ C @ ( divide_divide_int @ A @ B ) ) ) ) ).

% div_mult_self4
thf(fact_3303_div__mult__self4,axiom,
    ! [B: code_integer,C: code_integer,A: code_integer] :
      ( ( B != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ C ) @ A ) @ B )
        = ( plus_p5714425477246183910nteger @ C @ ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% div_mult_self4
thf(fact_3304_div__mult__self4,axiom,
    ! [B: code_natural,C: code_natural,A: code_natural] :
      ( ( B != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ B @ C ) @ A ) @ B )
        = ( plus_p4538020629002901425atural @ C @ ( divide5121882707175180666atural @ A @ B ) ) ) ) ).

% div_mult_self4
thf(fact_3305_div__pos__pos__trivial,axiom,
    ! [K: int,L: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ( ( ord_less_int @ K @ L )
       => ( ( divide_divide_int @ K @ L )
          = zero_zero_int ) ) ) ).

% div_pos_pos_trivial
thf(fact_3306_div__neg__neg__trivial,axiom,
    ! [K: int,L: int] :
      ( ( ord_less_eq_int @ K @ zero_zero_int )
     => ( ( ord_less_int @ L @ K )
       => ( ( divide_divide_int @ K @ L )
          = zero_zero_int ) ) ) ).

% div_neg_neg_trivial
thf(fact_3307_div__mult__mult1__if,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ( C = zero_zero_nat )
       => ( ( divide_divide_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) )
          = zero_zero_nat ) )
      & ( ( C != zero_zero_nat )
       => ( ( divide_divide_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) )
          = ( divide_divide_nat @ A @ B ) ) ) ) ).

% div_mult_mult1_if
thf(fact_3308_div__mult__mult1__if,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ( C = zero_zero_int )
       => ( ( divide_divide_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
          = zero_zero_int ) )
      & ( ( C != zero_zero_int )
       => ( ( divide_divide_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
          = ( divide_divide_int @ A @ B ) ) ) ) ).

% div_mult_mult1_if
thf(fact_3309_div__mult__mult1__if,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ( C = zero_z3403309356797280102nteger )
       => ( ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
          = zero_z3403309356797280102nteger ) )
      & ( ( C != zero_z3403309356797280102nteger )
       => ( ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
          = ( divide6298287555418463151nteger @ A @ B ) ) ) ) ).

% div_mult_mult1_if
thf(fact_3310_div__mult__mult1__if,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( ( C = zero_z2226904508553997617atural )
       => ( ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) )
          = zero_z2226904508553997617atural ) )
      & ( ( C != zero_z2226904508553997617atural )
       => ( ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) )
          = ( divide5121882707175180666atural @ A @ B ) ) ) ) ).

% div_mult_mult1_if
thf(fact_3311_div__mult__mult2,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( C != zero_zero_nat )
     => ( ( divide_divide_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) )
        = ( divide_divide_nat @ A @ B ) ) ) ).

% div_mult_mult2
thf(fact_3312_div__mult__mult2,axiom,
    ! [C: int,A: int,B: int] :
      ( ( C != zero_zero_int )
     => ( ( divide_divide_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) )
        = ( divide_divide_int @ A @ B ) ) ) ).

% div_mult_mult2
thf(fact_3313_div__mult__mult2,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( C != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ A @ C ) @ ( times_3573771949741848930nteger @ B @ C ) )
        = ( divide6298287555418463151nteger @ A @ B ) ) ) ).

% div_mult_mult2
thf(fact_3314_div__mult__mult2,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( C != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ A @ C ) @ ( times_2397367101498566445atural @ B @ C ) )
        = ( divide5121882707175180666atural @ A @ B ) ) ) ).

% div_mult_mult2
thf(fact_3315_div__mult__mult1,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( C != zero_zero_nat )
     => ( ( divide_divide_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) )
        = ( divide_divide_nat @ A @ B ) ) ) ).

% div_mult_mult1
thf(fact_3316_div__mult__mult1,axiom,
    ! [C: int,A: int,B: int] :
      ( ( C != zero_zero_int )
     => ( ( divide_divide_int @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
        = ( divide_divide_int @ A @ B ) ) ) ).

% div_mult_mult1
thf(fact_3317_div__mult__mult1,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( C != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ C @ A ) @ ( times_3573771949741848930nteger @ C @ B ) )
        = ( divide6298287555418463151nteger @ A @ B ) ) ) ).

% div_mult_mult1
thf(fact_3318_div__mult__mult1,axiom,
    ! [C: code_natural,A: code_natural,B: code_natural] :
      ( ( C != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ C @ A ) @ ( times_2397367101498566445atural @ C @ B ) )
        = ( divide5121882707175180666atural @ A @ B ) ) ) ).

% div_mult_mult1
thf(fact_3319_div__minus1__right,axiom,
    ! [A: int] :
      ( ( divide_divide_int @ A @ ( uminus_uminus_int @ one_one_int ) )
      = ( uminus_uminus_int @ A ) ) ).

% div_minus1_right
thf(fact_3320_div__minus1__right,axiom,
    ! [A: code_integer] :
      ( ( divide6298287555418463151nteger @ A @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( uminus1351360451143612070nteger @ A ) ) ).

% div_minus1_right
thf(fact_3321_div__by__Suc__0,axiom,
    ! [M: nat] :
      ( ( divide_divide_nat @ M @ ( suc @ zero_zero_nat ) )
      = M ) ).

% div_by_Suc_0
thf(fact_3322_div__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( divide_divide_nat @ M @ N )
        = zero_zero_nat ) ) ).

% div_less
thf(fact_3323_div__mult__self__is__m,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( divide_divide_nat @ ( times_times_nat @ M @ N ) @ N )
        = M ) ) ).

% div_mult_self_is_m
thf(fact_3324_div__mult__self1__is__m,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( divide_divide_nat @ ( times_times_nat @ N @ M ) @ N )
        = M ) ) ).

% div_mult_self1_is_m
thf(fact_3325_div__le__dividend,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( divide_divide_nat @ M @ N ) @ M ) ).

% div_le_dividend
thf(fact_3326_div__le__mono,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( divide_divide_nat @ M @ K ) @ ( divide_divide_nat @ N @ K ) ) ) ).

% div_le_mono
thf(fact_3327_Euclidean__Division_Odiv__eq__0__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( divide_divide_nat @ M @ N )
        = zero_zero_nat )
      = ( ( ord_less_nat @ M @ N )
        | ( N = zero_zero_nat ) ) ) ).

% Euclidean_Division.div_eq_0_iff
thf(fact_3328_Suc__div__le__mono,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( divide_divide_nat @ M @ N ) @ ( divide_divide_nat @ ( suc @ M ) @ N ) ) ).

% Suc_div_le_mono
thf(fact_3329_unique__euclidean__semiring__with__nat__class_Oof__nat__div,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri1314217659103216013at_int @ ( divide_divide_nat @ M @ N ) )
      = ( divide_divide_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) ) ).

% unique_euclidean_semiring_with_nat_class.of_nat_div
thf(fact_3330_unique__euclidean__semiring__with__nat__class_Oof__nat__div,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri1316708129612266289at_nat @ ( divide_divide_nat @ M @ N ) )
      = ( divide_divide_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) ) ) ).

% unique_euclidean_semiring_with_nat_class.of_nat_div
thf(fact_3331_unique__euclidean__semiring__with__nat__class_Oof__nat__div,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri4939895301339042750nteger @ ( divide_divide_nat @ M @ N ) )
      = ( divide6298287555418463151nteger @ ( semiri4939895301339042750nteger @ M ) @ ( semiri4939895301339042750nteger @ N ) ) ) ).

% unique_euclidean_semiring_with_nat_class.of_nat_div
thf(fact_3332_unique__euclidean__semiring__with__nat__class_Oof__nat__div,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri3763490453095760265atural @ ( divide_divide_nat @ M @ N ) )
      = ( divide5121882707175180666atural @ ( semiri3763490453095760265atural @ M ) @ ( semiri3763490453095760265atural @ N ) ) ) ).

% unique_euclidean_semiring_with_nat_class.of_nat_div
thf(fact_3333_div__times__less__eq__dividend,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( times_times_nat @ ( divide_divide_nat @ M @ N ) @ N ) @ M ) ).

% div_times_less_eq_dividend
thf(fact_3334_times__div__less__eq__dividend,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ ( times_times_nat @ N @ ( divide_divide_nat @ M @ N ) ) @ M ) ).

% times_div_less_eq_dividend
thf(fact_3335_div__mult2__eq_H,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( divide_divide_int @ A @ ( times_times_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) )
      = ( divide_divide_int @ ( divide_divide_int @ A @ ( semiri1314217659103216013at_int @ M ) ) @ ( semiri1314217659103216013at_int @ N ) ) ) ).

% div_mult2_eq'
thf(fact_3336_div__mult2__eq_H,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( divide_divide_nat @ A @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) ) )
      = ( divide_divide_nat @ ( divide_divide_nat @ A @ ( semiri1316708129612266289at_nat @ M ) ) @ ( semiri1316708129612266289at_nat @ N ) ) ) ).

% div_mult2_eq'
thf(fact_3337_div__mult2__eq_H,axiom,
    ! [A: code_integer,M: nat,N: nat] :
      ( ( divide6298287555418463151nteger @ A @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ M ) @ ( semiri4939895301339042750nteger @ N ) ) )
      = ( divide6298287555418463151nteger @ ( divide6298287555418463151nteger @ A @ ( semiri4939895301339042750nteger @ M ) ) @ ( semiri4939895301339042750nteger @ N ) ) ) ).

% div_mult2_eq'
thf(fact_3338_div__mult2__eq_H,axiom,
    ! [A: code_natural,M: nat,N: nat] :
      ( ( divide5121882707175180666atural @ A @ ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ M ) @ ( semiri3763490453095760265atural @ N ) ) )
      = ( divide5121882707175180666atural @ ( divide5121882707175180666atural @ A @ ( semiri3763490453095760265atural @ M ) ) @ ( semiri3763490453095760265atural @ N ) ) ) ).

% div_mult2_eq'
thf(fact_3339_div__le__mono2,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_eq_nat @ M @ N )
       => ( ord_less_eq_nat @ ( divide_divide_nat @ K @ N ) @ ( divide_divide_nat @ K @ M ) ) ) ) ).

% div_le_mono2
thf(fact_3340_div__greater__zero__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( divide_divide_nat @ M @ N ) )
      = ( ( ord_less_eq_nat @ N @ M )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% div_greater_zero_iff
thf(fact_3341_div__less__iff__less__mult,axiom,
    ! [Q2: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ Q2 )
     => ( ( ord_less_nat @ ( divide_divide_nat @ M @ Q2 ) @ N )
        = ( ord_less_nat @ M @ ( times_times_nat @ N @ Q2 ) ) ) ) ).

% div_less_iff_less_mult
thf(fact_3342_div__eq__dividend__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ( divide_divide_nat @ M @ N )
          = M )
        = ( N = one_one_nat ) ) ) ).

% div_eq_dividend_iff
thf(fact_3343_div__less__dividend,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ one_one_nat @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ M )
       => ( ord_less_nat @ ( divide_divide_nat @ M @ N ) @ M ) ) ) ).

% div_less_dividend
thf(fact_3344_zdiv__zmult2__eq,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ C )
     => ( ( divide_divide_int @ A @ ( times_times_int @ B @ C ) )
        = ( divide_divide_int @ ( divide_divide_int @ A @ B ) @ C ) ) ) ).

% zdiv_zmult2_eq
thf(fact_3345_nat__div__distrib,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X2 )
     => ( ( nat2 @ ( divide_divide_int @ X2 @ Y ) )
        = ( divide_divide_nat @ ( nat2 @ X2 ) @ ( nat2 @ Y ) ) ) ) ).

% nat_div_distrib
thf(fact_3346_nat__div__distrib_H,axiom,
    ! [Y: int,X2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Y )
     => ( ( nat2 @ ( divide_divide_int @ X2 @ Y ) )
        = ( divide_divide_nat @ ( nat2 @ X2 ) @ ( nat2 @ Y ) ) ) ) ).

% nat_div_distrib'
thf(fact_3347_div__add__self2,axiom,
    ! [B: nat,A: nat] :
      ( ( B != zero_zero_nat )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ A @ B ) @ B )
        = ( plus_plus_nat @ ( divide_divide_nat @ A @ B ) @ one_one_nat ) ) ) ).

% div_add_self2
thf(fact_3348_div__add__self2,axiom,
    ! [B: int,A: int] :
      ( ( B != zero_zero_int )
     => ( ( divide_divide_int @ ( plus_plus_int @ A @ B ) @ B )
        = ( plus_plus_int @ ( divide_divide_int @ A @ B ) @ one_one_int ) ) ) ).

% div_add_self2
thf(fact_3349_div__add__self2,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( B != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ B )
        = ( plus_p5714425477246183910nteger @ ( divide6298287555418463151nteger @ A @ B ) @ one_one_Code_integer ) ) ) ).

% div_add_self2
thf(fact_3350_div__add__self2,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( B != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ A @ B ) @ B )
        = ( plus_p4538020629002901425atural @ ( divide5121882707175180666atural @ A @ B ) @ one_one_Code_natural ) ) ) ).

% div_add_self2
thf(fact_3351_div__add__self1,axiom,
    ! [B: nat,A: nat] :
      ( ( B != zero_zero_nat )
     => ( ( divide_divide_nat @ ( plus_plus_nat @ B @ A ) @ B )
        = ( plus_plus_nat @ ( divide_divide_nat @ A @ B ) @ one_one_nat ) ) ) ).

% div_add_self1
thf(fact_3352_div__add__self1,axiom,
    ! [B: int,A: int] :
      ( ( B != zero_zero_int )
     => ( ( divide_divide_int @ ( plus_plus_int @ B @ A ) @ B )
        = ( plus_plus_int @ ( divide_divide_int @ A @ B ) @ one_one_int ) ) ) ).

% div_add_self1
thf(fact_3353_div__add__self1,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( B != zero_z3403309356797280102nteger )
     => ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ B @ A ) @ B )
        = ( plus_p5714425477246183910nteger @ ( divide6298287555418463151nteger @ A @ B ) @ one_one_Code_integer ) ) ) ).

% div_add_self1
thf(fact_3354_div__add__self1,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( B != zero_z2226904508553997617atural )
     => ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ B @ A ) @ B )
        = ( plus_p4538020629002901425atural @ ( divide5121882707175180666atural @ A @ B ) @ one_one_Code_natural ) ) ) ).

% div_add_self1
thf(fact_3355_div__if,axiom,
    ( divide_divide_nat
    = ( ^ [M2: nat,N3: nat] :
          ( if_nat
          @ ( ( ord_less_nat @ M2 @ N3 )
            | ( N3 = zero_zero_nat ) )
          @ zero_zero_nat
          @ ( suc @ ( divide_divide_nat @ ( minus_minus_nat @ M2 @ N3 ) @ N3 ) ) ) ) ) ).

% div_if
thf(fact_3356_less__eq__div__iff__mult__less__eq,axiom,
    ! [Q2: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ Q2 )
     => ( ( ord_less_eq_nat @ M @ ( divide_divide_nat @ N @ Q2 ) )
        = ( ord_less_eq_nat @ ( times_times_nat @ M @ Q2 ) @ N ) ) ) ).

% less_eq_div_iff_mult_less_eq
thf(fact_3357_div__nat__eqI,axiom,
    ! [N: nat,Q2: nat,M: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ N @ Q2 ) @ M )
     => ( ( ord_less_nat @ M @ ( times_times_nat @ N @ ( suc @ Q2 ) ) )
       => ( ( divide_divide_nat @ M @ N )
          = Q2 ) ) ) ).

% div_nat_eqI
thf(fact_3358_split__div,axiom,
    ! [P: nat > $o,M: nat,N: nat] :
      ( ( P @ ( divide_divide_nat @ M @ N ) )
      = ( ( ( N = zero_zero_nat )
         => ( P @ zero_zero_nat ) )
        & ( ( N != zero_zero_nat )
         => ! [I2: nat,J3: nat] :
              ( ( ord_less_nat @ J3 @ N )
             => ( ( M
                  = ( plus_plus_nat @ ( times_times_nat @ N @ I2 ) @ J3 ) )
               => ( P @ I2 ) ) ) ) ) ) ).

% split_div
thf(fact_3359_dividend__less__div__times,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ M @ ( plus_plus_nat @ N @ ( times_times_nat @ ( divide_divide_nat @ M @ N ) @ N ) ) ) ) ).

% dividend_less_div_times
thf(fact_3360_dividend__less__times__div,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ M @ ( plus_plus_nat @ N @ ( times_times_nat @ N @ ( divide_divide_nat @ M @ N ) ) ) ) ) ).

% dividend_less_times_div
thf(fact_3361_le__div__geq,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( divide_divide_nat @ M @ N )
          = ( suc @ ( divide_divide_nat @ ( minus_minus_nat @ M @ N ) @ N ) ) ) ) ) ).

% le_div_geq
thf(fact_3362_split__div_H,axiom,
    ! [P: nat > $o,M: nat,N: nat] :
      ( ( P @ ( divide_divide_nat @ M @ N ) )
      = ( ( ( N = zero_zero_nat )
          & ( P @ zero_zero_nat ) )
        | ? [Q6: nat] :
            ( ( ord_less_eq_nat @ ( times_times_nat @ N @ Q6 ) @ M )
            & ( ord_less_nat @ M @ ( times_times_nat @ N @ ( suc @ Q6 ) ) )
            & ( P @ Q6 ) ) ) ) ).

% split_div'
thf(fact_3363_div__pos__neg__trivial,axiom,
    ! [K: int,L: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ( ( ord_less_eq_int @ ( plus_plus_int @ K @ L ) @ zero_zero_int )
       => ( ( divide_divide_int @ K @ L )
          = ( uminus_uminus_int @ one_one_int ) ) ) ) ).

% div_pos_neg_trivial
thf(fact_3364_bits__div__by__1,axiom,
    ! [A: nat] :
      ( ( divide_divide_nat @ A @ one_one_nat )
      = A ) ).

% bits_div_by_1
thf(fact_3365_bits__div__by__1,axiom,
    ! [A: int] :
      ( ( divide_divide_int @ A @ one_one_int )
      = A ) ).

% bits_div_by_1
thf(fact_3366_bits__div__by__1,axiom,
    ! [A: code_integer] :
      ( ( divide6298287555418463151nteger @ A @ one_one_Code_integer )
      = A ) ).

% bits_div_by_1
thf(fact_3367_bits__div__by__1,axiom,
    ! [A: code_natural] :
      ( ( divide5121882707175180666atural @ A @ one_one_Code_natural )
      = A ) ).

% bits_div_by_1
thf(fact_3368_bits__div__by__0,axiom,
    ! [A: nat] :
      ( ( divide_divide_nat @ A @ zero_zero_nat )
      = zero_zero_nat ) ).

% bits_div_by_0
thf(fact_3369_bits__div__by__0,axiom,
    ! [A: int] :
      ( ( divide_divide_int @ A @ zero_zero_int )
      = zero_zero_int ) ).

% bits_div_by_0
thf(fact_3370_bits__div__by__0,axiom,
    ! [A: code_integer] :
      ( ( divide6298287555418463151nteger @ A @ zero_z3403309356797280102nteger )
      = zero_z3403309356797280102nteger ) ).

% bits_div_by_0
thf(fact_3371_bits__div__by__0,axiom,
    ! [A: code_natural] :
      ( ( divide5121882707175180666atural @ A @ zero_z2226904508553997617atural )
      = zero_z2226904508553997617atural ) ).

% bits_div_by_0
thf(fact_3372_bits__div__0,axiom,
    ! [A: nat] :
      ( ( divide_divide_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% bits_div_0
thf(fact_3373_bits__div__0,axiom,
    ! [A: int] :
      ( ( divide_divide_int @ zero_zero_int @ A )
      = zero_zero_int ) ).

% bits_div_0
thf(fact_3374_bits__div__0,axiom,
    ! [A: code_integer] :
      ( ( divide6298287555418463151nteger @ zero_z3403309356797280102nteger @ A )
      = zero_z3403309356797280102nteger ) ).

% bits_div_0
thf(fact_3375_bits__div__0,axiom,
    ! [A: code_natural] :
      ( ( divide5121882707175180666atural @ zero_z2226904508553997617atural @ A )
      = zero_z2226904508553997617atural ) ).

% bits_div_0
thf(fact_3376_int__power__div__base,axiom,
    ! [M: nat,K: int] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_int @ zero_zero_int @ K )
       => ( ( divide_divide_int @ ( power_power_int @ K @ M ) @ K )
          = ( power_power_int @ K @ ( minus_minus_nat @ M @ ( suc @ zero_zero_nat ) ) ) ) ) ) ).

% int_power_div_base
thf(fact_3377_gbinomial__absorption_H,axiom,
    ! [K: nat,A: rat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( gbinomial_rat @ A @ K )
        = ( times_times_rat @ ( divide_divide_rat @ A @ ( semiri681578069525770553at_rat @ K ) ) @ ( gbinomial_rat @ ( minus_minus_rat @ A @ one_one_rat ) @ ( minus_minus_nat @ K @ one_one_nat ) ) ) ) ) ).

% gbinomial_absorption'
thf(fact_3378_pochhammer__absorb__comp,axiom,
    ! [R: int,K: nat] :
      ( ( times_times_int @ ( minus_minus_int @ R @ ( semiri1314217659103216013at_int @ K ) ) @ ( comm_s4660882817536571857er_int @ ( uminus_uminus_int @ R ) @ K ) )
      = ( times_times_int @ R @ ( comm_s4660882817536571857er_int @ ( plus_plus_int @ ( uminus_uminus_int @ R ) @ one_one_int ) @ K ) ) ) ).

% pochhammer_absorb_comp
thf(fact_3379_pochhammer__absorb__comp,axiom,
    ! [R: code_integer,K: nat] :
      ( ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ R @ ( semiri4939895301339042750nteger @ K ) ) @ ( comm_s8582702949713902594nteger @ ( uminus1351360451143612070nteger @ R ) @ K ) )
      = ( times_3573771949741848930nteger @ R @ ( comm_s8582702949713902594nteger @ ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ R ) @ one_one_Code_integer ) @ K ) ) ) ).

% pochhammer_absorb_comp
thf(fact_3380_pochhammer__absorb__comp,axiom,
    ! [R: rat,K: nat] :
      ( ( times_times_rat @ ( minus_minus_rat @ R @ ( semiri681578069525770553at_rat @ K ) ) @ ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ R ) @ K ) )
      = ( times_times_rat @ R @ ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ ( uminus_uminus_rat @ R ) @ one_one_rat ) @ K ) ) ) ).

% pochhammer_absorb_comp
thf(fact_3381_fact__reduce,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( semiri1406184849735516958ct_int @ N )
        = ( times_times_int @ ( semiri1314217659103216013at_int @ N ) @ ( semiri1406184849735516958ct_int @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ) ).

% fact_reduce
thf(fact_3382_fact__reduce,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( semiri3624122377584611663nteger @ N )
        = ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ N ) @ ( semiri3624122377584611663nteger @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ) ).

% fact_reduce
thf(fact_3383_fact__reduce,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( semiri773545260158071498ct_rat @ N )
        = ( times_times_rat @ ( semiri681578069525770553at_rat @ N ) @ ( semiri773545260158071498ct_rat @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ) ).

% fact_reduce
thf(fact_3384_fact__reduce,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( semiri2447717529341329178atural @ N )
        = ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ N ) @ ( semiri2447717529341329178atural @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ) ).

% fact_reduce
thf(fact_3385_fact__reduce,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( semiri1408675320244567234ct_nat @ N )
        = ( times_times_nat @ ( semiri1316708129612266289at_nat @ N ) @ ( semiri1408675320244567234ct_nat @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ) ).

% fact_reduce
thf(fact_3386_power__one,axiom,
    ! [N: nat] :
      ( ( power_8256067586552552935nteger @ one_one_Code_integer @ N )
      = one_one_Code_integer ) ).

% power_one
thf(fact_3387_power__one,axiom,
    ! [N: nat] :
      ( ( power_power_rat @ one_one_rat @ N )
      = one_one_rat ) ).

% power_one
thf(fact_3388_power__one,axiom,
    ! [N: nat] :
      ( ( power_7079662738309270450atural @ one_one_Code_natural @ N )
      = one_one_Code_natural ) ).

% power_one
thf(fact_3389_power__one,axiom,
    ! [N: nat] :
      ( ( power_power_int @ one_one_int @ N )
      = one_one_int ) ).

% power_one
thf(fact_3390_power__one,axiom,
    ! [N: nat] :
      ( ( power_power_nat @ one_one_nat @ N )
      = one_one_nat ) ).

% power_one
thf(fact_3391_of__nat__power__eq__of__nat__cancel__iff,axiom,
    ! [X2: nat,B: nat,W2: nat] :
      ( ( ( semiri1314217659103216013at_int @ X2 )
        = ( power_power_int @ ( semiri1314217659103216013at_int @ B ) @ W2 ) )
      = ( X2
        = ( power_power_nat @ B @ W2 ) ) ) ).

% of_nat_power_eq_of_nat_cancel_iff
thf(fact_3392_of__nat__power__eq__of__nat__cancel__iff,axiom,
    ! [X2: nat,B: nat,W2: nat] :
      ( ( ( semiri1316708129612266289at_nat @ X2 )
        = ( power_power_nat @ ( semiri1316708129612266289at_nat @ B ) @ W2 ) )
      = ( X2
        = ( power_power_nat @ B @ W2 ) ) ) ).

% of_nat_power_eq_of_nat_cancel_iff
thf(fact_3393_of__nat__power__eq__of__nat__cancel__iff,axiom,
    ! [X2: nat,B: nat,W2: nat] :
      ( ( ( semiri4939895301339042750nteger @ X2 )
        = ( power_8256067586552552935nteger @ ( semiri4939895301339042750nteger @ B ) @ W2 ) )
      = ( X2
        = ( power_power_nat @ B @ W2 ) ) ) ).

% of_nat_power_eq_of_nat_cancel_iff
thf(fact_3394_of__nat__power__eq__of__nat__cancel__iff,axiom,
    ! [X2: nat,B: nat,W2: nat] :
      ( ( ( semiri681578069525770553at_rat @ X2 )
        = ( power_power_rat @ ( semiri681578069525770553at_rat @ B ) @ W2 ) )
      = ( X2
        = ( power_power_nat @ B @ W2 ) ) ) ).

% of_nat_power_eq_of_nat_cancel_iff
thf(fact_3395_of__nat__power__eq__of__nat__cancel__iff,axiom,
    ! [X2: nat,B: nat,W2: nat] :
      ( ( ( semiri3763490453095760265atural @ X2 )
        = ( power_7079662738309270450atural @ ( semiri3763490453095760265atural @ B ) @ W2 ) )
      = ( X2
        = ( power_power_nat @ B @ W2 ) ) ) ).

% of_nat_power_eq_of_nat_cancel_iff
thf(fact_3396_of__nat__eq__of__nat__power__cancel__iff,axiom,
    ! [B: nat,W2: nat,X2: nat] :
      ( ( ( power_power_int @ ( semiri1314217659103216013at_int @ B ) @ W2 )
        = ( semiri1314217659103216013at_int @ X2 ) )
      = ( ( power_power_nat @ B @ W2 )
        = X2 ) ) ).

% of_nat_eq_of_nat_power_cancel_iff
thf(fact_3397_of__nat__eq__of__nat__power__cancel__iff,axiom,
    ! [B: nat,W2: nat,X2: nat] :
      ( ( ( power_power_nat @ ( semiri1316708129612266289at_nat @ B ) @ W2 )
        = ( semiri1316708129612266289at_nat @ X2 ) )
      = ( ( power_power_nat @ B @ W2 )
        = X2 ) ) ).

% of_nat_eq_of_nat_power_cancel_iff
thf(fact_3398_of__nat__eq__of__nat__power__cancel__iff,axiom,
    ! [B: nat,W2: nat,X2: nat] :
      ( ( ( power_8256067586552552935nteger @ ( semiri4939895301339042750nteger @ B ) @ W2 )
        = ( semiri4939895301339042750nteger @ X2 ) )
      = ( ( power_power_nat @ B @ W2 )
        = X2 ) ) ).

% of_nat_eq_of_nat_power_cancel_iff
thf(fact_3399_of__nat__eq__of__nat__power__cancel__iff,axiom,
    ! [B: nat,W2: nat,X2: nat] :
      ( ( ( power_power_rat @ ( semiri681578069525770553at_rat @ B ) @ W2 )
        = ( semiri681578069525770553at_rat @ X2 ) )
      = ( ( power_power_nat @ B @ W2 )
        = X2 ) ) ).

% of_nat_eq_of_nat_power_cancel_iff
thf(fact_3400_of__nat__eq__of__nat__power__cancel__iff,axiom,
    ! [B: nat,W2: nat,X2: nat] :
      ( ( ( power_7079662738309270450atural @ ( semiri3763490453095760265atural @ B ) @ W2 )
        = ( semiri3763490453095760265atural @ X2 ) )
      = ( ( power_power_nat @ B @ W2 )
        = X2 ) ) ).

% of_nat_eq_of_nat_power_cancel_iff
thf(fact_3401_of__nat__power,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri1314217659103216013at_int @ ( power_power_nat @ M @ N ) )
      = ( power_power_int @ ( semiri1314217659103216013at_int @ M ) @ N ) ) ).

% of_nat_power
thf(fact_3402_of__nat__power,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri1316708129612266289at_nat @ ( power_power_nat @ M @ N ) )
      = ( power_power_nat @ ( semiri1316708129612266289at_nat @ M ) @ N ) ) ).

% of_nat_power
thf(fact_3403_of__nat__power,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri4939895301339042750nteger @ ( power_power_nat @ M @ N ) )
      = ( power_8256067586552552935nteger @ ( semiri4939895301339042750nteger @ M ) @ N ) ) ).

% of_nat_power
thf(fact_3404_of__nat__power,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri681578069525770553at_rat @ ( power_power_nat @ M @ N ) )
      = ( power_power_rat @ ( semiri681578069525770553at_rat @ M ) @ N ) ) ).

% of_nat_power
thf(fact_3405_of__nat__power,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri3763490453095760265atural @ ( power_power_nat @ M @ N ) )
      = ( power_7079662738309270450atural @ ( semiri3763490453095760265atural @ M ) @ N ) ) ).

% of_nat_power
thf(fact_3406_power__one__right,axiom,
    ! [A: int] :
      ( ( power_power_int @ A @ one_one_nat )
      = A ) ).

% power_one_right
thf(fact_3407_power__one__right,axiom,
    ! [A: nat] :
      ( ( power_power_nat @ A @ one_one_nat )
      = A ) ).

% power_one_right
thf(fact_3408_of__nat__fact,axiom,
    ! [N: nat] :
      ( ( semiri1314217659103216013at_int @ ( semiri1408675320244567234ct_nat @ N ) )
      = ( semiri1406184849735516958ct_int @ N ) ) ).

% of_nat_fact
thf(fact_3409_of__nat__fact,axiom,
    ! [N: nat] :
      ( ( semiri4939895301339042750nteger @ ( semiri1408675320244567234ct_nat @ N ) )
      = ( semiri3624122377584611663nteger @ N ) ) ).

% of_nat_fact
thf(fact_3410_of__nat__fact,axiom,
    ! [N: nat] :
      ( ( semiri681578069525770553at_rat @ ( semiri1408675320244567234ct_nat @ N ) )
      = ( semiri773545260158071498ct_rat @ N ) ) ).

% of_nat_fact
thf(fact_3411_of__nat__fact,axiom,
    ! [N: nat] :
      ( ( semiri3763490453095760265atural @ ( semiri1408675320244567234ct_nat @ N ) )
      = ( semiri2447717529341329178atural @ N ) ) ).

% of_nat_fact
thf(fact_3412_of__nat__fact,axiom,
    ! [N: nat] :
      ( ( semiri1316708129612266289at_nat @ ( semiri1408675320244567234ct_nat @ N ) )
      = ( semiri1408675320244567234ct_nat @ N ) ) ).

% of_nat_fact
thf(fact_3413_power__inject__exp,axiom,
    ! [A: code_natural,M: nat,N: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
     => ( ( ( power_7079662738309270450atural @ A @ M )
          = ( power_7079662738309270450atural @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_3414_power__inject__exp,axiom,
    ! [A: code_integer,M: nat,N: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
     => ( ( ( power_8256067586552552935nteger @ A @ M )
          = ( power_8256067586552552935nteger @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_3415_power__inject__exp,axiom,
    ! [A: rat,M: nat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ( ( power_power_rat @ A @ M )
          = ( power_power_rat @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_3416_power__inject__exp,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ( ( power_power_nat @ A @ M )
          = ( power_power_nat @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_3417_power__inject__exp,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ( ( power_power_int @ A @ M )
          = ( power_power_int @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_3418_power__0__Suc,axiom,
    ! [N: nat] :
      ( ( power_8256067586552552935nteger @ zero_z3403309356797280102nteger @ ( suc @ N ) )
      = zero_z3403309356797280102nteger ) ).

% power_0_Suc
thf(fact_3419_power__0__Suc,axiom,
    ! [N: nat] :
      ( ( power_power_rat @ zero_zero_rat @ ( suc @ N ) )
      = zero_zero_rat ) ).

% power_0_Suc
thf(fact_3420_power__0__Suc,axiom,
    ! [N: nat] :
      ( ( power_7079662738309270450atural @ zero_z2226904508553997617atural @ ( suc @ N ) )
      = zero_z2226904508553997617atural ) ).

% power_0_Suc
thf(fact_3421_power__0__Suc,axiom,
    ! [N: nat] :
      ( ( power_power_int @ zero_zero_int @ ( suc @ N ) )
      = zero_zero_int ) ).

% power_0_Suc
thf(fact_3422_power__0__Suc,axiom,
    ! [N: nat] :
      ( ( power_power_nat @ zero_zero_nat @ ( suc @ N ) )
      = zero_zero_nat ) ).

% power_0_Suc
thf(fact_3423_power__Suc0__right,axiom,
    ! [A: int] :
      ( ( power_power_int @ A @ ( suc @ zero_zero_nat ) )
      = A ) ).

% power_Suc0_right
thf(fact_3424_power__Suc0__right,axiom,
    ! [A: nat] :
      ( ( power_power_nat @ A @ ( suc @ zero_zero_nat ) )
      = A ) ).

% power_Suc0_right
thf(fact_3425_gbinomial__0_I2_J,axiom,
    ! [K: nat] :
      ( ( gbinomial_nat @ zero_zero_nat @ ( suc @ K ) )
      = zero_zero_nat ) ).

% gbinomial_0(2)
thf(fact_3426_gbinomial__0_I2_J,axiom,
    ! [K: nat] :
      ( ( gbinomial_int @ zero_zero_int @ ( suc @ K ) )
      = zero_zero_int ) ).

% gbinomial_0(2)
thf(fact_3427_gbinomial__0_I2_J,axiom,
    ! [K: nat] :
      ( ( gbinom8545251970709558553nteger @ zero_z3403309356797280102nteger @ ( suc @ K ) )
      = zero_z3403309356797280102nteger ) ).

% gbinomial_0(2)
thf(fact_3428_gbinomial__0_I2_J,axiom,
    ! [K: nat] :
      ( ( gbinomial_rat @ zero_zero_rat @ ( suc @ K ) )
      = zero_zero_rat ) ).

% gbinomial_0(2)
thf(fact_3429_gbinomial__0_I2_J,axiom,
    ! [K: nat] :
      ( ( gbinom7368847122466276068atural @ zero_z2226904508553997617atural @ ( suc @ K ) )
      = zero_z2226904508553997617atural ) ).

% gbinomial_0(2)
thf(fact_3430_fact__0,axiom,
    ( ( semiri1406184849735516958ct_int @ zero_zero_nat )
    = one_one_int ) ).

% fact_0
thf(fact_3431_fact__0,axiom,
    ( ( semiri3624122377584611663nteger @ zero_zero_nat )
    = one_one_Code_integer ) ).

% fact_0
thf(fact_3432_fact__0,axiom,
    ( ( semiri773545260158071498ct_rat @ zero_zero_nat )
    = one_one_rat ) ).

% fact_0
thf(fact_3433_fact__0,axiom,
    ( ( semiri2447717529341329178atural @ zero_zero_nat )
    = one_one_Code_natural ) ).

% fact_0
thf(fact_3434_fact__0,axiom,
    ( ( semiri1408675320244567234ct_nat @ zero_zero_nat )
    = one_one_nat ) ).

% fact_0
thf(fact_3435_gbinomial__0_I1_J,axiom,
    ! [A: int] :
      ( ( gbinomial_int @ A @ zero_zero_nat )
      = one_one_int ) ).

% gbinomial_0(1)
thf(fact_3436_gbinomial__0_I1_J,axiom,
    ! [A: nat] :
      ( ( gbinomial_nat @ A @ zero_zero_nat )
      = one_one_nat ) ).

% gbinomial_0(1)
thf(fact_3437_gbinomial__0_I1_J,axiom,
    ! [A: code_integer] :
      ( ( gbinom8545251970709558553nteger @ A @ zero_zero_nat )
      = one_one_Code_integer ) ).

% gbinomial_0(1)
thf(fact_3438_gbinomial__0_I1_J,axiom,
    ! [A: rat] :
      ( ( gbinomial_rat @ A @ zero_zero_nat )
      = one_one_rat ) ).

% gbinomial_0(1)
thf(fact_3439_gbinomial__0_I1_J,axiom,
    ! [A: code_natural] :
      ( ( gbinom7368847122466276068atural @ A @ zero_zero_nat )
      = one_one_Code_natural ) ).

% gbinomial_0(1)
thf(fact_3440_pochhammer__0,axiom,
    ! [A: int] :
      ( ( comm_s4660882817536571857er_int @ A @ zero_zero_nat )
      = one_one_int ) ).

% pochhammer_0
thf(fact_3441_pochhammer__0,axiom,
    ! [A: nat] :
      ( ( comm_s4663373288045622133er_nat @ A @ zero_zero_nat )
      = one_one_nat ) ).

% pochhammer_0
thf(fact_3442_pochhammer__0,axiom,
    ! [A: code_integer] :
      ( ( comm_s8582702949713902594nteger @ A @ zero_zero_nat )
      = one_one_Code_integer ) ).

% pochhammer_0
thf(fact_3443_pochhammer__0,axiom,
    ! [A: rat] :
      ( ( comm_s4028243227959126397er_rat @ A @ zero_zero_nat )
      = one_one_rat ) ).

% pochhammer_0
thf(fact_3444_pochhammer__0,axiom,
    ! [A: code_natural] :
      ( ( comm_s7406298101470620109atural @ A @ zero_zero_nat )
      = one_one_Code_natural ) ).

% pochhammer_0
thf(fact_3445_fact__1,axiom,
    ( ( semiri1406184849735516958ct_int @ one_one_nat )
    = one_one_int ) ).

% fact_1
thf(fact_3446_fact__1,axiom,
    ( ( semiri3624122377584611663nteger @ one_one_nat )
    = one_one_Code_integer ) ).

% fact_1
thf(fact_3447_fact__1,axiom,
    ( ( semiri773545260158071498ct_rat @ one_one_nat )
    = one_one_rat ) ).

% fact_1
thf(fact_3448_fact__1,axiom,
    ( ( semiri2447717529341329178atural @ one_one_nat )
    = one_one_Code_natural ) ).

% fact_1
thf(fact_3449_fact__1,axiom,
    ( ( semiri1408675320244567234ct_nat @ one_one_nat )
    = one_one_nat ) ).

% fact_1
thf(fact_3450_of__int__power,axiom,
    ! [Z2: int,N: nat] :
      ( ( ring_18347121197199848620nteger @ ( power_power_int @ Z2 @ N ) )
      = ( power_8256067586552552935nteger @ ( ring_18347121197199848620nteger @ Z2 ) @ N ) ) ).

% of_int_power
thf(fact_3451_of__int__power,axiom,
    ! [Z2: int,N: nat] :
      ( ( ring_1_of_int_rat @ ( power_power_int @ Z2 @ N ) )
      = ( power_power_rat @ ( ring_1_of_int_rat @ Z2 ) @ N ) ) ).

% of_int_power
thf(fact_3452_of__int__power,axiom,
    ! [Z2: int,N: nat] :
      ( ( ring_1_of_int_int @ ( power_power_int @ Z2 @ N ) )
      = ( power_power_int @ ( ring_1_of_int_int @ Z2 ) @ N ) ) ).

% of_int_power
thf(fact_3453_of__int__eq__of__int__power__cancel__iff,axiom,
    ! [B: int,W2: nat,X2: int] :
      ( ( ( power_8256067586552552935nteger @ ( ring_18347121197199848620nteger @ B ) @ W2 )
        = ( ring_18347121197199848620nteger @ X2 ) )
      = ( ( power_power_int @ B @ W2 )
        = X2 ) ) ).

% of_int_eq_of_int_power_cancel_iff
thf(fact_3454_of__int__eq__of__int__power__cancel__iff,axiom,
    ! [B: int,W2: nat,X2: int] :
      ( ( ( power_power_rat @ ( ring_1_of_int_rat @ B ) @ W2 )
        = ( ring_1_of_int_rat @ X2 ) )
      = ( ( power_power_int @ B @ W2 )
        = X2 ) ) ).

% of_int_eq_of_int_power_cancel_iff
thf(fact_3455_of__int__eq__of__int__power__cancel__iff,axiom,
    ! [B: int,W2: nat,X2: int] :
      ( ( ( power_power_int @ ( ring_1_of_int_int @ B ) @ W2 )
        = ( ring_1_of_int_int @ X2 ) )
      = ( ( power_power_int @ B @ W2 )
        = X2 ) ) ).

% of_int_eq_of_int_power_cancel_iff
thf(fact_3456_of__int__power__eq__of__int__cancel__iff,axiom,
    ! [X2: int,B: int,W2: nat] :
      ( ( ( ring_18347121197199848620nteger @ X2 )
        = ( power_8256067586552552935nteger @ ( ring_18347121197199848620nteger @ B ) @ W2 ) )
      = ( X2
        = ( power_power_int @ B @ W2 ) ) ) ).

% of_int_power_eq_of_int_cancel_iff
thf(fact_3457_of__int__power__eq__of__int__cancel__iff,axiom,
    ! [X2: int,B: int,W2: nat] :
      ( ( ( ring_1_of_int_rat @ X2 )
        = ( power_power_rat @ ( ring_1_of_int_rat @ B ) @ W2 ) )
      = ( X2
        = ( power_power_int @ B @ W2 ) ) ) ).

% of_int_power_eq_of_int_cancel_iff
thf(fact_3458_of__int__power__eq__of__int__cancel__iff,axiom,
    ! [X2: int,B: int,W2: nat] :
      ( ( ( ring_1_of_int_int @ X2 )
        = ( power_power_int @ ( ring_1_of_int_int @ B ) @ W2 ) )
      = ( X2
        = ( power_power_int @ B @ W2 ) ) ) ).

% of_int_power_eq_of_int_cancel_iff
thf(fact_3459_power__strict__increasing__iff,axiom,
    ! [B: code_natural,X2: nat,Y: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ B )
     => ( ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ B @ X2 ) @ ( power_7079662738309270450atural @ B @ Y ) )
        = ( ord_less_nat @ X2 @ Y ) ) ) ).

% power_strict_increasing_iff
thf(fact_3460_power__strict__increasing__iff,axiom,
    ! [B: code_integer,X2: nat,Y: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ B )
     => ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ B @ X2 ) @ ( power_8256067586552552935nteger @ B @ Y ) )
        = ( ord_less_nat @ X2 @ Y ) ) ) ).

% power_strict_increasing_iff
thf(fact_3461_power__strict__increasing__iff,axiom,
    ! [B: rat,X2: nat,Y: nat] :
      ( ( ord_less_rat @ one_one_rat @ B )
     => ( ( ord_less_rat @ ( power_power_rat @ B @ X2 ) @ ( power_power_rat @ B @ Y ) )
        = ( ord_less_nat @ X2 @ Y ) ) ) ).

% power_strict_increasing_iff
thf(fact_3462_power__strict__increasing__iff,axiom,
    ! [B: nat,X2: nat,Y: nat] :
      ( ( ord_less_nat @ one_one_nat @ B )
     => ( ( ord_less_nat @ ( power_power_nat @ B @ X2 ) @ ( power_power_nat @ B @ Y ) )
        = ( ord_less_nat @ X2 @ Y ) ) ) ).

% power_strict_increasing_iff
thf(fact_3463_power__strict__increasing__iff,axiom,
    ! [B: int,X2: nat,Y: nat] :
      ( ( ord_less_int @ one_one_int @ B )
     => ( ( ord_less_int @ ( power_power_int @ B @ X2 ) @ ( power_power_int @ B @ Y ) )
        = ( ord_less_nat @ X2 @ Y ) ) ) ).

% power_strict_increasing_iff
thf(fact_3464_minus__one__mult__self,axiom,
    ! [N: nat] :
      ( ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) )
      = one_one_int ) ).

% minus_one_mult_self
thf(fact_3465_minus__one__mult__self,axiom,
    ! [N: nat] :
      ( ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N ) @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N ) )
      = one_one_Code_integer ) ).

% minus_one_mult_self
thf(fact_3466_minus__one__mult__self,axiom,
    ! [N: nat] :
      ( ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) )
      = one_one_rat ) ).

% minus_one_mult_self
thf(fact_3467_left__minus__one__mult__self,axiom,
    ! [N: nat,A: int] :
      ( ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ A ) )
      = A ) ).

% left_minus_one_mult_self
thf(fact_3468_left__minus__one__mult__self,axiom,
    ! [N: nat,A: code_integer] :
      ( ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N ) @ ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N ) @ A ) )
      = A ) ).

% left_minus_one_mult_self
thf(fact_3469_left__minus__one__mult__self,axiom,
    ! [N: nat,A: rat] :
      ( ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) @ ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) @ A ) )
      = A ) ).

% left_minus_one_mult_self
thf(fact_3470_power__eq__0__iff,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ( power_8256067586552552935nteger @ A @ N )
        = zero_z3403309356797280102nteger )
      = ( ( A = zero_z3403309356797280102nteger )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% power_eq_0_iff
thf(fact_3471_power__eq__0__iff,axiom,
    ! [A: rat,N: nat] :
      ( ( ( power_power_rat @ A @ N )
        = zero_zero_rat )
      = ( ( A = zero_zero_rat )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% power_eq_0_iff
thf(fact_3472_power__eq__0__iff,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ( power_7079662738309270450atural @ A @ N )
        = zero_z2226904508553997617atural )
      = ( ( A = zero_z2226904508553997617atural )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% power_eq_0_iff
thf(fact_3473_power__eq__0__iff,axiom,
    ! [A: int,N: nat] :
      ( ( ( power_power_int @ A @ N )
        = zero_zero_int )
      = ( ( A = zero_zero_int )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% power_eq_0_iff
thf(fact_3474_power__eq__0__iff,axiom,
    ! [A: nat,N: nat] :
      ( ( ( power_power_nat @ A @ N )
        = zero_zero_nat )
      = ( ( A = zero_zero_nat )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% power_eq_0_iff
thf(fact_3475_of__nat__less__of__nat__power__cancel__iff,axiom,
    ! [B: nat,W2: nat,X2: nat] :
      ( ( ord_less_int @ ( power_power_int @ ( semiri1314217659103216013at_int @ B ) @ W2 ) @ ( semiri1314217659103216013at_int @ X2 ) )
      = ( ord_less_nat @ ( power_power_nat @ B @ W2 ) @ X2 ) ) ).

% of_nat_less_of_nat_power_cancel_iff
thf(fact_3476_of__nat__less__of__nat__power__cancel__iff,axiom,
    ! [B: nat,W2: nat,X2: nat] :
      ( ( ord_less_nat @ ( power_power_nat @ ( semiri1316708129612266289at_nat @ B ) @ W2 ) @ ( semiri1316708129612266289at_nat @ X2 ) )
      = ( ord_less_nat @ ( power_power_nat @ B @ W2 ) @ X2 ) ) ).

% of_nat_less_of_nat_power_cancel_iff
thf(fact_3477_of__nat__less__of__nat__power__cancel__iff,axiom,
    ! [B: nat,W2: nat,X2: nat] :
      ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ ( semiri4939895301339042750nteger @ B ) @ W2 ) @ ( semiri4939895301339042750nteger @ X2 ) )
      = ( ord_less_nat @ ( power_power_nat @ B @ W2 ) @ X2 ) ) ).

% of_nat_less_of_nat_power_cancel_iff
thf(fact_3478_of__nat__less__of__nat__power__cancel__iff,axiom,
    ! [B: nat,W2: nat,X2: nat] :
      ( ( ord_less_rat @ ( power_power_rat @ ( semiri681578069525770553at_rat @ B ) @ W2 ) @ ( semiri681578069525770553at_rat @ X2 ) )
      = ( ord_less_nat @ ( power_power_nat @ B @ W2 ) @ X2 ) ) ).

% of_nat_less_of_nat_power_cancel_iff
thf(fact_3479_of__nat__less__of__nat__power__cancel__iff,axiom,
    ! [B: nat,W2: nat,X2: nat] :
      ( ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ ( semiri3763490453095760265atural @ B ) @ W2 ) @ ( semiri3763490453095760265atural @ X2 ) )
      = ( ord_less_nat @ ( power_power_nat @ B @ W2 ) @ X2 ) ) ).

% of_nat_less_of_nat_power_cancel_iff
thf(fact_3480_of__nat__power__less__of__nat__cancel__iff,axiom,
    ! [X2: nat,B: nat,W2: nat] :
      ( ( ord_less_int @ ( semiri1314217659103216013at_int @ X2 ) @ ( power_power_int @ ( semiri1314217659103216013at_int @ B ) @ W2 ) )
      = ( ord_less_nat @ X2 @ ( power_power_nat @ B @ W2 ) ) ) ).

% of_nat_power_less_of_nat_cancel_iff
thf(fact_3481_of__nat__power__less__of__nat__cancel__iff,axiom,
    ! [X2: nat,B: nat,W2: nat] :
      ( ( ord_less_nat @ ( semiri1316708129612266289at_nat @ X2 ) @ ( power_power_nat @ ( semiri1316708129612266289at_nat @ B ) @ W2 ) )
      = ( ord_less_nat @ X2 @ ( power_power_nat @ B @ W2 ) ) ) ).

% of_nat_power_less_of_nat_cancel_iff
thf(fact_3482_of__nat__power__less__of__nat__cancel__iff,axiom,
    ! [X2: nat,B: nat,W2: nat] :
      ( ( ord_le6747313008572928689nteger @ ( semiri4939895301339042750nteger @ X2 ) @ ( power_8256067586552552935nteger @ ( semiri4939895301339042750nteger @ B ) @ W2 ) )
      = ( ord_less_nat @ X2 @ ( power_power_nat @ B @ W2 ) ) ) ).

% of_nat_power_less_of_nat_cancel_iff
thf(fact_3483_of__nat__power__less__of__nat__cancel__iff,axiom,
    ! [X2: nat,B: nat,W2: nat] :
      ( ( ord_less_rat @ ( semiri681578069525770553at_rat @ X2 ) @ ( power_power_rat @ ( semiri681578069525770553at_rat @ B ) @ W2 ) )
      = ( ord_less_nat @ X2 @ ( power_power_nat @ B @ W2 ) ) ) ).

% of_nat_power_less_of_nat_cancel_iff
thf(fact_3484_of__nat__power__less__of__nat__cancel__iff,axiom,
    ! [X2: nat,B: nat,W2: nat] :
      ( ( ord_le5570908160329646204atural @ ( semiri3763490453095760265atural @ X2 ) @ ( power_7079662738309270450atural @ ( semiri3763490453095760265atural @ B ) @ W2 ) )
      = ( ord_less_nat @ X2 @ ( power_power_nat @ B @ W2 ) ) ) ).

% of_nat_power_less_of_nat_cancel_iff
thf(fact_3485_of__nat__power__le__of__nat__cancel__iff,axiom,
    ! [X2: nat,B: nat,W2: nat] :
      ( ( ord_le3102999989581377725nteger @ ( semiri4939895301339042750nteger @ X2 ) @ ( power_8256067586552552935nteger @ ( semiri4939895301339042750nteger @ B ) @ W2 ) )
      = ( ord_less_eq_nat @ X2 @ ( power_power_nat @ B @ W2 ) ) ) ).

% of_nat_power_le_of_nat_cancel_iff
thf(fact_3486_of__nat__power__le__of__nat__cancel__iff,axiom,
    ! [X2: nat,B: nat,W2: nat] :
      ( ( ord_le1926595141338095240atural @ ( semiri3763490453095760265atural @ X2 ) @ ( power_7079662738309270450atural @ ( semiri3763490453095760265atural @ B ) @ W2 ) )
      = ( ord_less_eq_nat @ X2 @ ( power_power_nat @ B @ W2 ) ) ) ).

% of_nat_power_le_of_nat_cancel_iff
thf(fact_3487_of__nat__power__le__of__nat__cancel__iff,axiom,
    ! [X2: nat,B: nat,W2: nat] :
      ( ( ord_less_eq_rat @ ( semiri681578069525770553at_rat @ X2 ) @ ( power_power_rat @ ( semiri681578069525770553at_rat @ B ) @ W2 ) )
      = ( ord_less_eq_nat @ X2 @ ( power_power_nat @ B @ W2 ) ) ) ).

% of_nat_power_le_of_nat_cancel_iff
thf(fact_3488_of__nat__power__le__of__nat__cancel__iff,axiom,
    ! [X2: nat,B: nat,W2: nat] :
      ( ( ord_less_eq_nat @ ( semiri1316708129612266289at_nat @ X2 ) @ ( power_power_nat @ ( semiri1316708129612266289at_nat @ B ) @ W2 ) )
      = ( ord_less_eq_nat @ X2 @ ( power_power_nat @ B @ W2 ) ) ) ).

% of_nat_power_le_of_nat_cancel_iff
thf(fact_3489_of__nat__power__le__of__nat__cancel__iff,axiom,
    ! [X2: nat,B: nat,W2: nat] :
      ( ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ X2 ) @ ( power_power_int @ ( semiri1314217659103216013at_int @ B ) @ W2 ) )
      = ( ord_less_eq_nat @ X2 @ ( power_power_nat @ B @ W2 ) ) ) ).

% of_nat_power_le_of_nat_cancel_iff
thf(fact_3490_of__nat__le__of__nat__power__cancel__iff,axiom,
    ! [B: nat,W2: nat,X2: nat] :
      ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ ( semiri4939895301339042750nteger @ B ) @ W2 ) @ ( semiri4939895301339042750nteger @ X2 ) )
      = ( ord_less_eq_nat @ ( power_power_nat @ B @ W2 ) @ X2 ) ) ).

% of_nat_le_of_nat_power_cancel_iff
thf(fact_3491_of__nat__le__of__nat__power__cancel__iff,axiom,
    ! [B: nat,W2: nat,X2: nat] :
      ( ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ ( semiri3763490453095760265atural @ B ) @ W2 ) @ ( semiri3763490453095760265atural @ X2 ) )
      = ( ord_less_eq_nat @ ( power_power_nat @ B @ W2 ) @ X2 ) ) ).

% of_nat_le_of_nat_power_cancel_iff
thf(fact_3492_of__nat__le__of__nat__power__cancel__iff,axiom,
    ! [B: nat,W2: nat,X2: nat] :
      ( ( ord_less_eq_rat @ ( power_power_rat @ ( semiri681578069525770553at_rat @ B ) @ W2 ) @ ( semiri681578069525770553at_rat @ X2 ) )
      = ( ord_less_eq_nat @ ( power_power_nat @ B @ W2 ) @ X2 ) ) ).

% of_nat_le_of_nat_power_cancel_iff
thf(fact_3493_of__nat__le__of__nat__power__cancel__iff,axiom,
    ! [B: nat,W2: nat,X2: nat] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ ( semiri1316708129612266289at_nat @ B ) @ W2 ) @ ( semiri1316708129612266289at_nat @ X2 ) )
      = ( ord_less_eq_nat @ ( power_power_nat @ B @ W2 ) @ X2 ) ) ).

% of_nat_le_of_nat_power_cancel_iff
thf(fact_3494_of__nat__le__of__nat__power__cancel__iff,axiom,
    ! [B: nat,W2: nat,X2: nat] :
      ( ( ord_less_eq_int @ ( power_power_int @ ( semiri1314217659103216013at_int @ B ) @ W2 ) @ ( semiri1314217659103216013at_int @ X2 ) )
      = ( ord_less_eq_nat @ ( power_power_nat @ B @ W2 ) @ X2 ) ) ).

% of_nat_le_of_nat_power_cancel_iff
thf(fact_3495_fact__Suc__0,axiom,
    ( ( semiri1406184849735516958ct_int @ ( suc @ zero_zero_nat ) )
    = one_one_int ) ).

% fact_Suc_0
thf(fact_3496_fact__Suc__0,axiom,
    ( ( semiri3624122377584611663nteger @ ( suc @ zero_zero_nat ) )
    = one_one_Code_integer ) ).

% fact_Suc_0
thf(fact_3497_fact__Suc__0,axiom,
    ( ( semiri773545260158071498ct_rat @ ( suc @ zero_zero_nat ) )
    = one_one_rat ) ).

% fact_Suc_0
thf(fact_3498_fact__Suc__0,axiom,
    ( ( semiri2447717529341329178atural @ ( suc @ zero_zero_nat ) )
    = one_one_Code_natural ) ).

% fact_Suc_0
thf(fact_3499_fact__Suc__0,axiom,
    ( ( semiri1408675320244567234ct_nat @ ( suc @ zero_zero_nat ) )
    = one_one_nat ) ).

% fact_Suc_0
thf(fact_3500_fact__Suc,axiom,
    ! [N: nat] :
      ( ( semiri1406184849735516958ct_int @ ( suc @ N ) )
      = ( times_times_int @ ( semiri1314217659103216013at_int @ ( suc @ N ) ) @ ( semiri1406184849735516958ct_int @ N ) ) ) ).

% fact_Suc
thf(fact_3501_fact__Suc,axiom,
    ! [N: nat] :
      ( ( semiri3624122377584611663nteger @ ( suc @ N ) )
      = ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ ( suc @ N ) ) @ ( semiri3624122377584611663nteger @ N ) ) ) ).

% fact_Suc
thf(fact_3502_fact__Suc,axiom,
    ! [N: nat] :
      ( ( semiri773545260158071498ct_rat @ ( suc @ N ) )
      = ( times_times_rat @ ( semiri681578069525770553at_rat @ ( suc @ N ) ) @ ( semiri773545260158071498ct_rat @ N ) ) ) ).

% fact_Suc
thf(fact_3503_fact__Suc,axiom,
    ! [N: nat] :
      ( ( semiri2447717529341329178atural @ ( suc @ N ) )
      = ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ ( suc @ N ) ) @ ( semiri2447717529341329178atural @ N ) ) ) ).

% fact_Suc
thf(fact_3504_fact__Suc,axiom,
    ! [N: nat] :
      ( ( semiri1408675320244567234ct_nat @ ( suc @ N ) )
      = ( times_times_nat @ ( semiri1316708129612266289at_nat @ ( suc @ N ) ) @ ( semiri1408675320244567234ct_nat @ N ) ) ) ).

% fact_Suc
thf(fact_3505_power__strict__decreasing__iff,axiom,
    ! [B: code_natural,M: nat,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B )
     => ( ( ord_le5570908160329646204atural @ B @ one_one_Code_natural )
       => ( ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ B @ M ) @ ( power_7079662738309270450atural @ B @ N ) )
          = ( ord_less_nat @ N @ M ) ) ) ) ).

% power_strict_decreasing_iff
thf(fact_3506_power__strict__decreasing__iff,axiom,
    ! [B: code_integer,M: nat,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
     => ( ( ord_le6747313008572928689nteger @ B @ one_one_Code_integer )
       => ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ B @ M ) @ ( power_8256067586552552935nteger @ B @ N ) )
          = ( ord_less_nat @ N @ M ) ) ) ) ).

% power_strict_decreasing_iff
thf(fact_3507_power__strict__decreasing__iff,axiom,
    ! [B: rat,M: nat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ B )
     => ( ( ord_less_rat @ B @ one_one_rat )
       => ( ( ord_less_rat @ ( power_power_rat @ B @ M ) @ ( power_power_rat @ B @ N ) )
          = ( ord_less_nat @ N @ M ) ) ) ) ).

% power_strict_decreasing_iff
thf(fact_3508_power__strict__decreasing__iff,axiom,
    ! [B: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ B )
     => ( ( ord_less_nat @ B @ one_one_nat )
       => ( ( ord_less_nat @ ( power_power_nat @ B @ M ) @ ( power_power_nat @ B @ N ) )
          = ( ord_less_nat @ N @ M ) ) ) ) ).

% power_strict_decreasing_iff
thf(fact_3509_power__strict__decreasing__iff,axiom,
    ! [B: int,M: nat,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_int @ B @ one_one_int )
       => ( ( ord_less_int @ ( power_power_int @ B @ M ) @ ( power_power_int @ B @ N ) )
          = ( ord_less_nat @ N @ M ) ) ) ) ).

% power_strict_decreasing_iff
thf(fact_3510_power__mono__iff,axiom,
    ! [A: code_integer,B: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ N ) @ ( power_8256067586552552935nteger @ B @ N ) )
            = ( ord_le3102999989581377725nteger @ A @ B ) ) ) ) ) ).

% power_mono_iff
thf(fact_3511_power__mono__iff,axiom,
    ! [A: code_natural,B: code_natural,N: nat] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ N ) @ ( power_7079662738309270450atural @ B @ N ) )
            = ( ord_le1926595141338095240atural @ A @ B ) ) ) ) ) ).

% power_mono_iff
thf(fact_3512_power__mono__iff,axiom,
    ! [A: rat,B: rat,N: nat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ( ord_less_eq_rat @ ( power_power_rat @ A @ N ) @ ( power_power_rat @ B @ N ) )
            = ( ord_less_eq_rat @ A @ B ) ) ) ) ) ).

% power_mono_iff
thf(fact_3513_power__mono__iff,axiom,
    ! [A: nat,B: nat,N: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ( ord_less_eq_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ B @ N ) )
            = ( ord_less_eq_nat @ A @ B ) ) ) ) ) ).

% power_mono_iff
thf(fact_3514_power__mono__iff,axiom,
    ! [A: int,B: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ( ord_less_eq_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ B @ N ) )
            = ( ord_less_eq_int @ A @ B ) ) ) ) ) ).

% power_mono_iff
thf(fact_3515_power__increasing__iff,axiom,
    ! [B: code_natural,X2: nat,Y: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ B )
     => ( ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ B @ X2 ) @ ( power_7079662738309270450atural @ B @ Y ) )
        = ( ord_less_eq_nat @ X2 @ Y ) ) ) ).

% power_increasing_iff
thf(fact_3516_power__increasing__iff,axiom,
    ! [B: code_integer,X2: nat,Y: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ B )
     => ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ B @ X2 ) @ ( power_8256067586552552935nteger @ B @ Y ) )
        = ( ord_less_eq_nat @ X2 @ Y ) ) ) ).

% power_increasing_iff
thf(fact_3517_power__increasing__iff,axiom,
    ! [B: rat,X2: nat,Y: nat] :
      ( ( ord_less_rat @ one_one_rat @ B )
     => ( ( ord_less_eq_rat @ ( power_power_rat @ B @ X2 ) @ ( power_power_rat @ B @ Y ) )
        = ( ord_less_eq_nat @ X2 @ Y ) ) ) ).

% power_increasing_iff
thf(fact_3518_power__increasing__iff,axiom,
    ! [B: nat,X2: nat,Y: nat] :
      ( ( ord_less_nat @ one_one_nat @ B )
     => ( ( ord_less_eq_nat @ ( power_power_nat @ B @ X2 ) @ ( power_power_nat @ B @ Y ) )
        = ( ord_less_eq_nat @ X2 @ Y ) ) ) ).

% power_increasing_iff
thf(fact_3519_power__increasing__iff,axiom,
    ! [B: int,X2: nat,Y: nat] :
      ( ( ord_less_int @ one_one_int @ B )
     => ( ( ord_less_eq_int @ ( power_power_int @ B @ X2 ) @ ( power_power_int @ B @ Y ) )
        = ( ord_less_eq_nat @ X2 @ Y ) ) ) ).

% power_increasing_iff
thf(fact_3520_zero__less__power__abs__iff,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ ( abs_abs_Code_integer @ A ) @ N ) )
      = ( ( A != zero_z3403309356797280102nteger )
        | ( N = zero_zero_nat ) ) ) ).

% zero_less_power_abs_iff
thf(fact_3521_zero__less__power__abs__iff,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( power_power_rat @ ( abs_abs_rat @ A ) @ N ) )
      = ( ( A != zero_zero_rat )
        | ( N = zero_zero_nat ) ) ) ).

% zero_less_power_abs_iff
thf(fact_3522_zero__less__power__abs__iff,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ ( power_power_int @ ( abs_abs_int @ A ) @ N ) )
      = ( ( A != zero_zero_int )
        | ( N = zero_zero_nat ) ) ) ).

% zero_less_power_abs_iff
thf(fact_3523_of__int__le__of__int__power__cancel__iff,axiom,
    ! [B: int,W2: nat,X2: int] :
      ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ ( ring_18347121197199848620nteger @ B ) @ W2 ) @ ( ring_18347121197199848620nteger @ X2 ) )
      = ( ord_less_eq_int @ ( power_power_int @ B @ W2 ) @ X2 ) ) ).

% of_int_le_of_int_power_cancel_iff
thf(fact_3524_of__int__le__of__int__power__cancel__iff,axiom,
    ! [B: int,W2: nat,X2: int] :
      ( ( ord_less_eq_rat @ ( power_power_rat @ ( ring_1_of_int_rat @ B ) @ W2 ) @ ( ring_1_of_int_rat @ X2 ) )
      = ( ord_less_eq_int @ ( power_power_int @ B @ W2 ) @ X2 ) ) ).

% of_int_le_of_int_power_cancel_iff
thf(fact_3525_of__int__le__of__int__power__cancel__iff,axiom,
    ! [B: int,W2: nat,X2: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ ( ring_1_of_int_int @ B ) @ W2 ) @ ( ring_1_of_int_int @ X2 ) )
      = ( ord_less_eq_int @ ( power_power_int @ B @ W2 ) @ X2 ) ) ).

% of_int_le_of_int_power_cancel_iff
thf(fact_3526_of__int__power__le__of__int__cancel__iff,axiom,
    ! [X2: int,B: int,W2: nat] :
      ( ( ord_le3102999989581377725nteger @ ( ring_18347121197199848620nteger @ X2 ) @ ( power_8256067586552552935nteger @ ( ring_18347121197199848620nteger @ B ) @ W2 ) )
      = ( ord_less_eq_int @ X2 @ ( power_power_int @ B @ W2 ) ) ) ).

% of_int_power_le_of_int_cancel_iff
thf(fact_3527_of__int__power__le__of__int__cancel__iff,axiom,
    ! [X2: int,B: int,W2: nat] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ X2 ) @ ( power_power_rat @ ( ring_1_of_int_rat @ B ) @ W2 ) )
      = ( ord_less_eq_int @ X2 @ ( power_power_int @ B @ W2 ) ) ) ).

% of_int_power_le_of_int_cancel_iff
thf(fact_3528_of__int__power__le__of__int__cancel__iff,axiom,
    ! [X2: int,B: int,W2: nat] :
      ( ( ord_less_eq_int @ ( ring_1_of_int_int @ X2 ) @ ( power_power_int @ ( ring_1_of_int_int @ B ) @ W2 ) )
      = ( ord_less_eq_int @ X2 @ ( power_power_int @ B @ W2 ) ) ) ).

% of_int_power_le_of_int_cancel_iff
thf(fact_3529_of__int__less__of__int__power__cancel__iff,axiom,
    ! [B: int,W2: nat,X2: int] :
      ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ ( ring_18347121197199848620nteger @ B ) @ W2 ) @ ( ring_18347121197199848620nteger @ X2 ) )
      = ( ord_less_int @ ( power_power_int @ B @ W2 ) @ X2 ) ) ).

% of_int_less_of_int_power_cancel_iff
thf(fact_3530_of__int__less__of__int__power__cancel__iff,axiom,
    ! [B: int,W2: nat,X2: int] :
      ( ( ord_less_rat @ ( power_power_rat @ ( ring_1_of_int_rat @ B ) @ W2 ) @ ( ring_1_of_int_rat @ X2 ) )
      = ( ord_less_int @ ( power_power_int @ B @ W2 ) @ X2 ) ) ).

% of_int_less_of_int_power_cancel_iff
thf(fact_3531_of__int__less__of__int__power__cancel__iff,axiom,
    ! [B: int,W2: nat,X2: int] :
      ( ( ord_less_int @ ( power_power_int @ ( ring_1_of_int_int @ B ) @ W2 ) @ ( ring_1_of_int_int @ X2 ) )
      = ( ord_less_int @ ( power_power_int @ B @ W2 ) @ X2 ) ) ).

% of_int_less_of_int_power_cancel_iff
thf(fact_3532_of__int__power__less__of__int__cancel__iff,axiom,
    ! [X2: int,B: int,W2: nat] :
      ( ( ord_le6747313008572928689nteger @ ( ring_18347121197199848620nteger @ X2 ) @ ( power_8256067586552552935nteger @ ( ring_18347121197199848620nteger @ B ) @ W2 ) )
      = ( ord_less_int @ X2 @ ( power_power_int @ B @ W2 ) ) ) ).

% of_int_power_less_of_int_cancel_iff
thf(fact_3533_of__int__power__less__of__int__cancel__iff,axiom,
    ! [X2: int,B: int,W2: nat] :
      ( ( ord_less_rat @ ( ring_1_of_int_rat @ X2 ) @ ( power_power_rat @ ( ring_1_of_int_rat @ B ) @ W2 ) )
      = ( ord_less_int @ X2 @ ( power_power_int @ B @ W2 ) ) ) ).

% of_int_power_less_of_int_cancel_iff
thf(fact_3534_of__int__power__less__of__int__cancel__iff,axiom,
    ! [X2: int,B: int,W2: nat] :
      ( ( ord_less_int @ ( ring_1_of_int_int @ X2 ) @ ( power_power_int @ ( ring_1_of_int_int @ B ) @ W2 ) )
      = ( ord_less_int @ X2 @ ( power_power_int @ B @ W2 ) ) ) ).

% of_int_power_less_of_int_cancel_iff
thf(fact_3535_power__decreasing__iff,axiom,
    ! [B: code_natural,M: nat,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ B )
     => ( ( ord_le5570908160329646204atural @ B @ one_one_Code_natural )
       => ( ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ B @ M ) @ ( power_7079662738309270450atural @ B @ N ) )
          = ( ord_less_eq_nat @ N @ M ) ) ) ) ).

% power_decreasing_iff
thf(fact_3536_power__decreasing__iff,axiom,
    ! [B: code_integer,M: nat,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
     => ( ( ord_le6747313008572928689nteger @ B @ one_one_Code_integer )
       => ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ B @ M ) @ ( power_8256067586552552935nteger @ B @ N ) )
          = ( ord_less_eq_nat @ N @ M ) ) ) ) ).

% power_decreasing_iff
thf(fact_3537_power__decreasing__iff,axiom,
    ! [B: rat,M: nat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ B )
     => ( ( ord_less_rat @ B @ one_one_rat )
       => ( ( ord_less_eq_rat @ ( power_power_rat @ B @ M ) @ ( power_power_rat @ B @ N ) )
          = ( ord_less_eq_nat @ N @ M ) ) ) ) ).

% power_decreasing_iff
thf(fact_3538_power__decreasing__iff,axiom,
    ! [B: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ B )
     => ( ( ord_less_nat @ B @ one_one_nat )
       => ( ( ord_less_eq_nat @ ( power_power_nat @ B @ M ) @ ( power_power_nat @ B @ N ) )
          = ( ord_less_eq_nat @ N @ M ) ) ) ) ).

% power_decreasing_iff
thf(fact_3539_power__decreasing__iff,axiom,
    ! [B: int,M: nat,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_int @ B @ one_one_int )
       => ( ( ord_less_eq_int @ ( power_power_int @ B @ M ) @ ( power_power_int @ B @ N ) )
          = ( ord_less_eq_nat @ N @ M ) ) ) ) ).

% power_decreasing_iff
thf(fact_3540_of__nat__zero__less__power__iff,axiom,
    ! [X2: nat,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ ( power_power_int @ ( semiri1314217659103216013at_int @ X2 ) @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ X2 )
        | ( N = zero_zero_nat ) ) ) ).

% of_nat_zero_less_power_iff
thf(fact_3541_of__nat__zero__less__power__iff,axiom,
    ! [X2: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( power_power_nat @ ( semiri1316708129612266289at_nat @ X2 ) @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ X2 )
        | ( N = zero_zero_nat ) ) ) ).

% of_nat_zero_less_power_iff
thf(fact_3542_of__nat__zero__less__power__iff,axiom,
    ! [X2: nat,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ ( semiri4939895301339042750nteger @ X2 ) @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ X2 )
        | ( N = zero_zero_nat ) ) ) ).

% of_nat_zero_less_power_iff
thf(fact_3543_of__nat__zero__less__power__iff,axiom,
    ! [X2: nat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ ( power_power_rat @ ( semiri681578069525770553at_rat @ X2 ) @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ X2 )
        | ( N = zero_zero_nat ) ) ) ).

% of_nat_zero_less_power_iff
thf(fact_3544_of__nat__zero__less__power__iff,axiom,
    ! [X2: nat,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( power_7079662738309270450atural @ ( semiri3763490453095760265atural @ X2 ) @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ X2 )
        | ( N = zero_zero_nat ) ) ) ).

% of_nat_zero_less_power_iff
thf(fact_3545_pochhammer__of__nat,axiom,
    ! [X2: nat,N: nat] :
      ( ( comm_s4660882817536571857er_int @ ( semiri1314217659103216013at_int @ X2 ) @ N )
      = ( semiri1314217659103216013at_int @ ( comm_s4663373288045622133er_nat @ X2 @ N ) ) ) ).

% pochhammer_of_nat
thf(fact_3546_pochhammer__of__nat,axiom,
    ! [X2: nat,N: nat] :
      ( ( comm_s4663373288045622133er_nat @ ( semiri1316708129612266289at_nat @ X2 ) @ N )
      = ( semiri1316708129612266289at_nat @ ( comm_s4663373288045622133er_nat @ X2 @ N ) ) ) ).

% pochhammer_of_nat
thf(fact_3547_pochhammer__of__nat,axiom,
    ! [X2: nat,N: nat] :
      ( ( comm_s8582702949713902594nteger @ ( semiri4939895301339042750nteger @ X2 ) @ N )
      = ( semiri4939895301339042750nteger @ ( comm_s4663373288045622133er_nat @ X2 @ N ) ) ) ).

% pochhammer_of_nat
thf(fact_3548_pochhammer__of__nat,axiom,
    ! [X2: nat,N: nat] :
      ( ( comm_s4028243227959126397er_rat @ ( semiri681578069525770553at_rat @ X2 ) @ N )
      = ( semiri681578069525770553at_rat @ ( comm_s4663373288045622133er_nat @ X2 @ N ) ) ) ).

% pochhammer_of_nat
thf(fact_3549_pochhammer__of__nat,axiom,
    ! [X2: nat,N: nat] :
      ( ( comm_s7406298101470620109atural @ ( semiri3763490453095760265atural @ X2 ) @ N )
      = ( semiri3763490453095760265atural @ ( comm_s4663373288045622133er_nat @ X2 @ N ) ) ) ).

% pochhammer_of_nat
thf(fact_3550_pochhammer__fact,axiom,
    ( semiri1406184849735516958ct_int
    = ( comm_s4660882817536571857er_int @ one_one_int ) ) ).

% pochhammer_fact
thf(fact_3551_pochhammer__fact,axiom,
    ( semiri3624122377584611663nteger
    = ( comm_s8582702949713902594nteger @ one_one_Code_integer ) ) ).

% pochhammer_fact
thf(fact_3552_pochhammer__fact,axiom,
    ( semiri773545260158071498ct_rat
    = ( comm_s4028243227959126397er_rat @ one_one_rat ) ) ).

% pochhammer_fact
thf(fact_3553_pochhammer__fact,axiom,
    ( semiri2447717529341329178atural
    = ( comm_s7406298101470620109atural @ one_one_Code_natural ) ) ).

% pochhammer_fact
thf(fact_3554_pochhammer__fact,axiom,
    ( semiri1408675320244567234ct_nat
    = ( comm_s4663373288045622133er_nat @ one_one_nat ) ) ).

% pochhammer_fact
thf(fact_3555_of__nat__gbinomial,axiom,
    ! [N: nat,K: nat] :
      ( ( semiri681578069525770553at_rat @ ( gbinomial_nat @ N @ K ) )
      = ( gbinomial_rat @ ( semiri681578069525770553at_rat @ N ) @ K ) ) ).

% of_nat_gbinomial
thf(fact_3556_gbinomial__pochhammer,axiom,
    ( gbinomial_rat
    = ( ^ [A2: rat,K2: nat] : ( divide_divide_rat @ ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ K2 ) @ ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ A2 ) @ K2 ) ) @ ( semiri773545260158071498ct_rat @ K2 ) ) ) ) ).

% gbinomial_pochhammer
thf(fact_3557_gbinomial__ge__n__over__k__pow__k,axiom,
    ! [K: nat,A: rat] :
      ( ( ord_less_eq_rat @ ( semiri681578069525770553at_rat @ K ) @ A )
     => ( ord_less_eq_rat @ ( power_power_rat @ ( divide_divide_rat @ A @ ( semiri681578069525770553at_rat @ K ) ) @ K ) @ ( gbinomial_rat @ A @ K ) ) ) ).

% gbinomial_ge_n_over_k_pow_k
thf(fact_3558_fact__mono__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( semiri1408675320244567234ct_nat @ M ) @ ( semiri1408675320244567234ct_nat @ N ) ) ) ).

% fact_mono_nat
thf(fact_3559_fact__ge__self,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ ( semiri1408675320244567234ct_nat @ N ) ) ).

% fact_ge_self
thf(fact_3560_power__not__zero,axiom,
    ! [A: code_integer,N: nat] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( power_8256067586552552935nteger @ A @ N )
       != zero_z3403309356797280102nteger ) ) ).

% power_not_zero
thf(fact_3561_power__not__zero,axiom,
    ! [A: rat,N: nat] :
      ( ( A != zero_zero_rat )
     => ( ( power_power_rat @ A @ N )
       != zero_zero_rat ) ) ).

% power_not_zero
thf(fact_3562_power__not__zero,axiom,
    ! [A: code_natural,N: nat] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( power_7079662738309270450atural @ A @ N )
       != zero_z2226904508553997617atural ) ) ).

% power_not_zero
thf(fact_3563_power__not__zero,axiom,
    ! [A: int,N: nat] :
      ( ( A != zero_zero_int )
     => ( ( power_power_int @ A @ N )
       != zero_zero_int ) ) ).

% power_not_zero
thf(fact_3564_power__not__zero,axiom,
    ! [A: nat,N: nat] :
      ( ( A != zero_zero_nat )
     => ( ( power_power_nat @ A @ N )
       != zero_zero_nat ) ) ).

% power_not_zero
thf(fact_3565_fact__nonzero,axiom,
    ! [N: nat] :
      ( ( semiri1406184849735516958ct_int @ N )
     != zero_zero_int ) ).

% fact_nonzero
thf(fact_3566_fact__nonzero,axiom,
    ! [N: nat] :
      ( ( semiri3624122377584611663nteger @ N )
     != zero_z3403309356797280102nteger ) ).

% fact_nonzero
thf(fact_3567_fact__nonzero,axiom,
    ! [N: nat] :
      ( ( semiri773545260158071498ct_rat @ N )
     != zero_zero_rat ) ).

% fact_nonzero
thf(fact_3568_fact__nonzero,axiom,
    ! [N: nat] :
      ( ( semiri2447717529341329178atural @ N )
     != zero_z2226904508553997617atural ) ).

% fact_nonzero
thf(fact_3569_fact__nonzero,axiom,
    ! [N: nat] :
      ( ( semiri1408675320244567234ct_nat @ N )
     != zero_zero_nat ) ).

% fact_nonzero
thf(fact_3570_pochhammer__same,axiom,
    ! [N: nat] :
      ( ( comm_s4660882817536571857er_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) @ N )
      = ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ ( semiri1406184849735516958ct_int @ N ) ) ) ).

% pochhammer_same
thf(fact_3571_pochhammer__same,axiom,
    ! [N: nat] :
      ( ( comm_s8582702949713902594nteger @ ( uminus1351360451143612070nteger @ ( semiri4939895301339042750nteger @ N ) ) @ N )
      = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N ) @ ( semiri3624122377584611663nteger @ N ) ) ) ).

% pochhammer_same
thf(fact_3572_pochhammer__same,axiom,
    ! [N: nat] :
      ( ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ N ) ) @ N )
      = ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) @ ( semiri773545260158071498ct_rat @ N ) ) ) ).

% pochhammer_same
thf(fact_3573_Ints__power,axiom,
    ! [A: int,N: nat] :
      ( ( member_int @ A @ ring_1_Ints_int )
     => ( member_int @ ( power_power_int @ A @ N ) @ ring_1_Ints_int ) ) ).

% Ints_power
thf(fact_3574_gbinomial__pochhammer_H,axiom,
    ( gbinomial_rat
    = ( ^ [A2: rat,K2: nat] : ( divide_divide_rat @ ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ ( minus_minus_rat @ A2 @ ( semiri681578069525770553at_rat @ K2 ) ) @ one_one_rat ) @ K2 ) @ ( semiri773545260158071498ct_rat @ K2 ) ) ) ) ).

% gbinomial_pochhammer'
thf(fact_3575_gbinomial__index__swap,axiom,
    ! [K: nat,N: nat] :
      ( ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ K ) @ ( gbinomial_rat @ ( minus_minus_rat @ ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ N ) ) @ one_one_rat ) @ K ) )
      = ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) @ ( gbinomial_rat @ ( minus_minus_rat @ ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ K ) ) @ one_one_rat ) @ N ) ) ) ).

% gbinomial_index_swap
thf(fact_3576_gbinomial__negated__upper,axiom,
    ( gbinomial_rat
    = ( ^ [A2: rat,K2: nat] : ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ K2 ) @ ( gbinomial_rat @ ( minus_minus_rat @ ( minus_minus_rat @ ( semiri681578069525770553at_rat @ K2 ) @ A2 ) @ one_one_rat ) @ K2 ) ) ) ) ).

% gbinomial_negated_upper
thf(fact_3577_fact__less__mono__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ M @ N )
       => ( ord_less_nat @ ( semiri1408675320244567234ct_nat @ M ) @ ( semiri1408675320244567234ct_nat @ N ) ) ) ) ).

% fact_less_mono_nat
thf(fact_3578_zero__le__power,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ A @ N ) ) ) ).

% zero_le_power
thf(fact_3579_zero__le__power,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( power_7079662738309270450atural @ A @ N ) ) ) ).

% zero_le_power
thf(fact_3580_zero__le__power,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ord_less_eq_rat @ zero_zero_rat @ ( power_power_rat @ A @ N ) ) ) ).

% zero_le_power
thf(fact_3581_zero__le__power,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ord_less_eq_nat @ zero_zero_nat @ ( power_power_nat @ A @ N ) ) ) ).

% zero_le_power
thf(fact_3582_zero__le__power,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ord_less_eq_int @ zero_zero_int @ ( power_power_int @ A @ N ) ) ) ).

% zero_le_power
thf(fact_3583_power__mono,axiom,
    ! [A: code_integer,B: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
       => ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ N ) @ ( power_8256067586552552935nteger @ B @ N ) ) ) ) ).

% power_mono
thf(fact_3584_power__mono,axiom,
    ! [A: code_natural,B: code_natural,N: nat] :
      ( ( ord_le1926595141338095240atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
       => ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ N ) @ ( power_7079662738309270450atural @ B @ N ) ) ) ) ).

% power_mono
thf(fact_3585_power__mono,axiom,
    ! [A: rat,B: rat,N: nat] :
      ( ( ord_less_eq_rat @ A @ B )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ord_less_eq_rat @ ( power_power_rat @ A @ N ) @ ( power_power_rat @ B @ N ) ) ) ) ).

% power_mono
thf(fact_3586_power__mono,axiom,
    ! [A: nat,B: nat,N: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
       => ( ord_less_eq_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ B @ N ) ) ) ) ).

% power_mono
thf(fact_3587_power__mono,axiom,
    ! [A: int,B: int,N: nat] :
      ( ( ord_less_eq_int @ A @ B )
     => ( ( ord_less_eq_int @ zero_zero_int @ A )
       => ( ord_less_eq_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ B @ N ) ) ) ) ).

% power_mono
thf(fact_3588_zero__less__power,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( power_7079662738309270450atural @ A @ N ) ) ) ).

% zero_less_power
thf(fact_3589_zero__less__power,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ A @ N ) ) ) ).

% zero_less_power
thf(fact_3590_zero__less__power,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ord_less_rat @ zero_zero_rat @ ( power_power_rat @ A @ N ) ) ) ).

% zero_less_power
thf(fact_3591_zero__less__power,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ord_less_nat @ zero_zero_nat @ ( power_power_nat @ A @ N ) ) ) ).

% zero_less_power
thf(fact_3592_zero__less__power,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ord_less_int @ zero_zero_int @ ( power_power_int @ A @ N ) ) ) ).

% zero_less_power
thf(fact_3593_gbinomial__Suc__Suc,axiom,
    ! [A: rat,K: nat] :
      ( ( gbinomial_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( suc @ K ) )
      = ( plus_plus_rat @ ( gbinomial_rat @ A @ K ) @ ( gbinomial_rat @ A @ ( suc @ K ) ) ) ) ).

% gbinomial_Suc_Suc
thf(fact_3594_one__le__power,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ one_one_Code_integer @ A )
     => ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( power_8256067586552552935nteger @ A @ N ) ) ) ).

% one_le_power
thf(fact_3595_one__le__power,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le1926595141338095240atural @ one_one_Code_natural @ A )
     => ( ord_le1926595141338095240atural @ one_one_Code_natural @ ( power_7079662738309270450atural @ A @ N ) ) ) ).

% one_le_power
thf(fact_3596_one__le__power,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_eq_rat @ one_one_rat @ A )
     => ( ord_less_eq_rat @ one_one_rat @ ( power_power_rat @ A @ N ) ) ) ).

% one_le_power
thf(fact_3597_one__le__power,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_eq_nat @ one_one_nat @ A )
     => ( ord_less_eq_nat @ one_one_nat @ ( power_power_nat @ A @ N ) ) ) ).

% one_le_power
thf(fact_3598_one__le__power,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_eq_int @ one_one_int @ A )
     => ( ord_less_eq_int @ one_one_int @ ( power_power_int @ A @ N ) ) ) ).

% one_le_power
thf(fact_3599_left__right__inverse__power,axiom,
    ! [X2: code_natural,Y: code_natural,N: nat] :
      ( ( ( times_2397367101498566445atural @ X2 @ Y )
        = one_one_Code_natural )
     => ( ( times_2397367101498566445atural @ ( power_7079662738309270450atural @ X2 @ N ) @ ( power_7079662738309270450atural @ Y @ N ) )
        = one_one_Code_natural ) ) ).

% left_right_inverse_power
thf(fact_3600_left__right__inverse__power,axiom,
    ! [X2: code_integer,Y: code_integer,N: nat] :
      ( ( ( times_3573771949741848930nteger @ X2 @ Y )
        = one_one_Code_integer )
     => ( ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ X2 @ N ) @ ( power_8256067586552552935nteger @ Y @ N ) )
        = one_one_Code_integer ) ) ).

% left_right_inverse_power
thf(fact_3601_left__right__inverse__power,axiom,
    ! [X2: rat,Y: rat,N: nat] :
      ( ( ( times_times_rat @ X2 @ Y )
        = one_one_rat )
     => ( ( times_times_rat @ ( power_power_rat @ X2 @ N ) @ ( power_power_rat @ Y @ N ) )
        = one_one_rat ) ) ).

% left_right_inverse_power
thf(fact_3602_left__right__inverse__power,axiom,
    ! [X2: nat,Y: nat,N: nat] :
      ( ( ( times_times_nat @ X2 @ Y )
        = one_one_nat )
     => ( ( times_times_nat @ ( power_power_nat @ X2 @ N ) @ ( power_power_nat @ Y @ N ) )
        = one_one_nat ) ) ).

% left_right_inverse_power
thf(fact_3603_left__right__inverse__power,axiom,
    ! [X2: int,Y: int,N: nat] :
      ( ( ( times_times_int @ X2 @ Y )
        = one_one_int )
     => ( ( times_times_int @ ( power_power_int @ X2 @ N ) @ ( power_power_int @ Y @ N ) )
        = one_one_int ) ) ).

% left_right_inverse_power
thf(fact_3604_power__0,axiom,
    ! [A: code_integer] :
      ( ( power_8256067586552552935nteger @ A @ zero_zero_nat )
      = one_one_Code_integer ) ).

% power_0
thf(fact_3605_power__0,axiom,
    ! [A: rat] :
      ( ( power_power_rat @ A @ zero_zero_nat )
      = one_one_rat ) ).

% power_0
thf(fact_3606_power__0,axiom,
    ! [A: code_natural] :
      ( ( power_7079662738309270450atural @ A @ zero_zero_nat )
      = one_one_Code_natural ) ).

% power_0
thf(fact_3607_power__0,axiom,
    ! [A: int] :
      ( ( power_power_int @ A @ zero_zero_nat )
      = one_one_int ) ).

% power_0
thf(fact_3608_power__0,axiom,
    ! [A: nat] :
      ( ( power_power_nat @ A @ zero_zero_nat )
      = one_one_nat ) ).

% power_0
thf(fact_3609_power__one__over,axiom,
    ! [A: rat,N: nat] :
      ( ( power_power_rat @ ( divide_divide_rat @ one_one_rat @ A ) @ N )
      = ( divide_divide_rat @ one_one_rat @ ( power_power_rat @ A @ N ) ) ) ).

% power_one_over
thf(fact_3610_power__add,axiom,
    ! [A: code_integer,M: nat,N: nat] :
      ( ( power_8256067586552552935nteger @ A @ ( plus_plus_nat @ M @ N ) )
      = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ A @ M ) @ ( power_8256067586552552935nteger @ A @ N ) ) ) ).

% power_add
thf(fact_3611_power__add,axiom,
    ! [A: rat,M: nat,N: nat] :
      ( ( power_power_rat @ A @ ( plus_plus_nat @ M @ N ) )
      = ( times_times_rat @ ( power_power_rat @ A @ M ) @ ( power_power_rat @ A @ N ) ) ) ).

% power_add
thf(fact_3612_power__add,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( power_power_nat @ A @ ( plus_plus_nat @ M @ N ) )
      = ( times_times_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) ) ) ).

% power_add
thf(fact_3613_power__add,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( power_power_int @ A @ ( plus_plus_nat @ M @ N ) )
      = ( times_times_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) ) ) ).

% power_add
thf(fact_3614_fact__ge__zero,axiom,
    ! [N: nat] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( semiri3624122377584611663nteger @ N ) ) ).

% fact_ge_zero
thf(fact_3615_fact__ge__zero,axiom,
    ! [N: nat] : ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( semiri2447717529341329178atural @ N ) ) ).

% fact_ge_zero
thf(fact_3616_fact__ge__zero,axiom,
    ! [N: nat] : ( ord_less_eq_rat @ zero_zero_rat @ ( semiri773545260158071498ct_rat @ N ) ) ).

% fact_ge_zero
thf(fact_3617_fact__ge__zero,axiom,
    ! [N: nat] : ( ord_less_eq_int @ zero_zero_int @ ( semiri1406184849735516958ct_int @ N ) ) ).

% fact_ge_zero
thf(fact_3618_fact__ge__zero,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ ( semiri1408675320244567234ct_nat @ N ) ) ).

% fact_ge_zero
thf(fact_3619_gbinomial__of__nat__symmetric,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( gbinomial_rat @ ( semiri681578069525770553at_rat @ N ) @ K )
        = ( gbinomial_rat @ ( semiri681578069525770553at_rat @ N ) @ ( minus_minus_nat @ N @ K ) ) ) ) ).

% gbinomial_of_nat_symmetric
thf(fact_3620_fact__gt__zero,axiom,
    ! [N: nat] : ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( semiri2447717529341329178atural @ N ) ) ).

% fact_gt_zero
thf(fact_3621_fact__gt__zero,axiom,
    ! [N: nat] : ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( semiri3624122377584611663nteger @ N ) ) ).

% fact_gt_zero
thf(fact_3622_fact__gt__zero,axiom,
    ! [N: nat] : ( ord_less_rat @ zero_zero_rat @ ( semiri773545260158071498ct_rat @ N ) ) ).

% fact_gt_zero
thf(fact_3623_fact__gt__zero,axiom,
    ! [N: nat] : ( ord_less_int @ zero_zero_int @ ( semiri1406184849735516958ct_int @ N ) ) ).

% fact_gt_zero
thf(fact_3624_fact__gt__zero,axiom,
    ! [N: nat] : ( ord_less_nat @ zero_zero_nat @ ( semiri1408675320244567234ct_nat @ N ) ) ).

% fact_gt_zero
thf(fact_3625_fact__not__neg,axiom,
    ! [N: nat] :
      ~ ( ord_le5570908160329646204atural @ ( semiri2447717529341329178atural @ N ) @ zero_z2226904508553997617atural ) ).

% fact_not_neg
thf(fact_3626_fact__not__neg,axiom,
    ! [N: nat] :
      ~ ( ord_le6747313008572928689nteger @ ( semiri3624122377584611663nteger @ N ) @ zero_z3403309356797280102nteger ) ).

% fact_not_neg
thf(fact_3627_fact__not__neg,axiom,
    ! [N: nat] :
      ~ ( ord_less_rat @ ( semiri773545260158071498ct_rat @ N ) @ zero_zero_rat ) ).

% fact_not_neg
thf(fact_3628_fact__not__neg,axiom,
    ! [N: nat] :
      ~ ( ord_less_int @ ( semiri1406184849735516958ct_int @ N ) @ zero_zero_int ) ).

% fact_not_neg
thf(fact_3629_fact__not__neg,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ ( semiri1408675320244567234ct_nat @ N ) @ zero_zero_nat ) ).

% fact_not_neg
thf(fact_3630_fact__ge__1,axiom,
    ! [N: nat] : ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( semiri3624122377584611663nteger @ N ) ) ).

% fact_ge_1
thf(fact_3631_fact__ge__1,axiom,
    ! [N: nat] : ( ord_le1926595141338095240atural @ one_one_Code_natural @ ( semiri2447717529341329178atural @ N ) ) ).

% fact_ge_1
thf(fact_3632_fact__ge__1,axiom,
    ! [N: nat] : ( ord_less_eq_rat @ one_one_rat @ ( semiri773545260158071498ct_rat @ N ) ) ).

% fact_ge_1
thf(fact_3633_fact__ge__1,axiom,
    ! [N: nat] : ( ord_less_eq_int @ one_one_int @ ( semiri1406184849735516958ct_int @ N ) ) ).

% fact_ge_1
thf(fact_3634_fact__ge__1,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ one_one_nat @ ( semiri1408675320244567234ct_nat @ N ) ) ).

% fact_ge_1
thf(fact_3635_fact__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_rat @ ( semiri773545260158071498ct_rat @ M ) @ ( semiri773545260158071498ct_rat @ N ) ) ) ).

% fact_mono
thf(fact_3636_fact__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_int @ ( semiri1406184849735516958ct_int @ M ) @ ( semiri1406184849735516958ct_int @ N ) ) ) ).

% fact_mono
thf(fact_3637_fact__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( semiri1408675320244567234ct_nat @ M ) @ ( semiri1408675320244567234ct_nat @ N ) ) ) ).

% fact_mono
thf(fact_3638_pochhammer__pos,axiom,
    ! [X2: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ X2 )
     => ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( comm_s7406298101470620109atural @ X2 @ N ) ) ) ).

% pochhammer_pos
thf(fact_3639_pochhammer__pos,axiom,
    ! [X2: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ X2 )
     => ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( comm_s8582702949713902594nteger @ X2 @ N ) ) ) ).

% pochhammer_pos
thf(fact_3640_pochhammer__pos,axiom,
    ! [X2: rat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ X2 )
     => ( ord_less_rat @ zero_zero_rat @ ( comm_s4028243227959126397er_rat @ X2 @ N ) ) ) ).

% pochhammer_pos
thf(fact_3641_pochhammer__pos,axiom,
    ! [X2: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ X2 )
     => ( ord_less_nat @ zero_zero_nat @ ( comm_s4663373288045622133er_nat @ X2 @ N ) ) ) ).

% pochhammer_pos
thf(fact_3642_pochhammer__pos,axiom,
    ! [X2: int,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ X2 )
     => ( ord_less_int @ zero_zero_int @ ( comm_s4660882817536571857er_int @ X2 @ N ) ) ) ).

% pochhammer_pos
thf(fact_3643_pochhammer__neq__0__mono,axiom,
    ! [A: rat,M: nat,N: nat] :
      ( ( ( comm_s4028243227959126397er_rat @ A @ M )
       != zero_zero_rat )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( comm_s4028243227959126397er_rat @ A @ N )
         != zero_zero_rat ) ) ) ).

% pochhammer_neq_0_mono
thf(fact_3644_pochhammer__eq__0__mono,axiom,
    ! [A: rat,N: nat,M: nat] :
      ( ( ( comm_s4028243227959126397er_rat @ A @ N )
        = zero_zero_rat )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( comm_s4028243227959126397er_rat @ A @ M )
          = zero_zero_rat ) ) ) ).

% pochhammer_eq_0_mono
thf(fact_3645_gbinomial__minus,axiom,
    ! [A: rat,K: nat] :
      ( ( gbinomial_rat @ ( uminus_uminus_rat @ A ) @ K )
      = ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ K ) @ ( gbinomial_rat @ ( minus_minus_rat @ ( plus_plus_rat @ A @ ( semiri681578069525770553at_rat @ K ) ) @ one_one_rat ) @ K ) ) ) ).

% gbinomial_minus
thf(fact_3646_gbinomial__addition__formula,axiom,
    ! [A: rat,K: nat] :
      ( ( gbinomial_rat @ A @ ( suc @ K ) )
      = ( plus_plus_rat @ ( gbinomial_rat @ ( minus_minus_rat @ A @ one_one_rat ) @ ( suc @ K ) ) @ ( gbinomial_rat @ ( minus_minus_rat @ A @ one_one_rat ) @ K ) ) ) ).

% gbinomial_addition_formula
thf(fact_3647_gbinomial__absorb__comp,axiom,
    ! [A: rat,K: nat] :
      ( ( times_times_rat @ ( minus_minus_rat @ A @ ( semiri681578069525770553at_rat @ K ) ) @ ( gbinomial_rat @ A @ K ) )
      = ( times_times_rat @ A @ ( gbinomial_rat @ ( minus_minus_rat @ A @ one_one_rat ) @ K ) ) ) ).

% gbinomial_absorb_comp
thf(fact_3648_gbinomial__mult__1_H,axiom,
    ! [A: rat,K: nat] :
      ( ( times_times_rat @ ( gbinomial_rat @ A @ K ) @ A )
      = ( plus_plus_rat @ ( times_times_rat @ ( semiri681578069525770553at_rat @ K ) @ ( gbinomial_rat @ A @ K ) ) @ ( times_times_rat @ ( semiri681578069525770553at_rat @ ( suc @ K ) ) @ ( gbinomial_rat @ A @ ( suc @ K ) ) ) ) ) ).

% gbinomial_mult_1'
thf(fact_3649_gbinomial__mult__1,axiom,
    ! [A: rat,K: nat] :
      ( ( times_times_rat @ A @ ( gbinomial_rat @ A @ K ) )
      = ( plus_plus_rat @ ( times_times_rat @ ( semiri681578069525770553at_rat @ K ) @ ( gbinomial_rat @ A @ K ) ) @ ( times_times_rat @ ( semiri681578069525770553at_rat @ ( suc @ K ) ) @ ( gbinomial_rat @ A @ ( suc @ K ) ) ) ) ) ).

% gbinomial_mult_1
thf(fact_3650_fact__ge__Suc__0__nat,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( semiri1408675320244567234ct_nat @ N ) ) ).

% fact_ge_Suc_0_nat
thf(fact_3651_pochhammer__minus,axiom,
    ! [B: int,K: nat] :
      ( ( comm_s4660882817536571857er_int @ ( uminus_uminus_int @ B ) @ K )
      = ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ K ) @ ( comm_s4660882817536571857er_int @ ( plus_plus_int @ ( minus_minus_int @ B @ ( semiri1314217659103216013at_int @ K ) ) @ one_one_int ) @ K ) ) ) ).

% pochhammer_minus
thf(fact_3652_pochhammer__minus,axiom,
    ! [B: code_integer,K: nat] :
      ( ( comm_s8582702949713902594nteger @ ( uminus1351360451143612070nteger @ B ) @ K )
      = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ K ) @ ( comm_s8582702949713902594nteger @ ( plus_p5714425477246183910nteger @ ( minus_8373710615458151222nteger @ B @ ( semiri4939895301339042750nteger @ K ) ) @ one_one_Code_integer ) @ K ) ) ) ).

% pochhammer_minus
thf(fact_3653_pochhammer__minus,axiom,
    ! [B: rat,K: nat] :
      ( ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ B ) @ K )
      = ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ K ) @ ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ ( minus_minus_rat @ B @ ( semiri681578069525770553at_rat @ K ) ) @ one_one_rat ) @ K ) ) ) ).

% pochhammer_minus
thf(fact_3654_pochhammer__minus_H,axiom,
    ! [B: int,K: nat] :
      ( ( comm_s4660882817536571857er_int @ ( plus_plus_int @ ( minus_minus_int @ B @ ( semiri1314217659103216013at_int @ K ) ) @ one_one_int ) @ K )
      = ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ K ) @ ( comm_s4660882817536571857er_int @ ( uminus_uminus_int @ B ) @ K ) ) ) ).

% pochhammer_minus'
thf(fact_3655_pochhammer__minus_H,axiom,
    ! [B: code_integer,K: nat] :
      ( ( comm_s8582702949713902594nteger @ ( plus_p5714425477246183910nteger @ ( minus_8373710615458151222nteger @ B @ ( semiri4939895301339042750nteger @ K ) ) @ one_one_Code_integer ) @ K )
      = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ K ) @ ( comm_s8582702949713902594nteger @ ( uminus1351360451143612070nteger @ B ) @ K ) ) ) ).

% pochhammer_minus'
thf(fact_3656_pochhammer__minus_H,axiom,
    ! [B: rat,K: nat] :
      ( ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ ( minus_minus_rat @ B @ ( semiri681578069525770553at_rat @ K ) ) @ one_one_rat ) @ K )
      = ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ K ) @ ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ B ) @ K ) ) ) ).

% pochhammer_minus'
thf(fact_3657_power__less__imp__less__base,axiom,
    ! [A: code_natural,N: nat,B: code_natural] :
      ( ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ A @ N ) @ ( power_7079662738309270450atural @ B @ N ) )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le5570908160329646204atural @ A @ B ) ) ) ).

% power_less_imp_less_base
thf(fact_3658_power__less__imp__less__base,axiom,
    ! [A: code_integer,N: nat,B: code_integer] :
      ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ N ) @ ( power_8256067586552552935nteger @ B @ N ) )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le6747313008572928689nteger @ A @ B ) ) ) ).

% power_less_imp_less_base
thf(fact_3659_power__less__imp__less__base,axiom,
    ! [A: rat,N: nat,B: rat] :
      ( ( ord_less_rat @ ( power_power_rat @ A @ N ) @ ( power_power_rat @ B @ N ) )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_rat @ A @ B ) ) ) ).

% power_less_imp_less_base
thf(fact_3660_power__less__imp__less__base,axiom,
    ! [A: nat,N: nat,B: nat] :
      ( ( ord_less_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ B @ N ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ A @ B ) ) ) ).

% power_less_imp_less_base
thf(fact_3661_power__less__imp__less__base,axiom,
    ! [A: int,N: nat,B: int] :
      ( ( ord_less_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ B @ N ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ord_less_int @ A @ B ) ) ) ).

% power_less_imp_less_base
thf(fact_3662_power__le__one,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ A @ one_one_Code_integer )
       => ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ N ) @ one_one_Code_integer ) ) ) ).

% power_le_one
thf(fact_3663_power__le__one,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ A @ one_one_Code_natural )
       => ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ N ) @ one_one_Code_natural ) ) ) ).

% power_le_one
thf(fact_3664_power__le__one,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ A @ one_one_rat )
       => ( ord_less_eq_rat @ ( power_power_rat @ A @ N ) @ one_one_rat ) ) ) ).

% power_le_one
thf(fact_3665_power__le__one,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ A @ one_one_nat )
       => ( ord_less_eq_nat @ ( power_power_nat @ A @ N ) @ one_one_nat ) ) ) ).

% power_le_one
thf(fact_3666_power__le__one,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ A @ one_one_int )
       => ( ord_less_eq_int @ ( power_power_int @ A @ N ) @ one_one_int ) ) ) ).

% power_le_one
thf(fact_3667_power__le__imp__le__base,axiom,
    ! [A: code_integer,N: nat,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ ( suc @ N ) ) @ ( power_8256067586552552935nteger @ B @ ( suc @ N ) ) )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
       => ( ord_le3102999989581377725nteger @ A @ B ) ) ) ).

% power_le_imp_le_base
thf(fact_3668_power__le__imp__le__base,axiom,
    ! [A: code_natural,N: nat,B: code_natural] :
      ( ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ ( suc @ N ) ) @ ( power_7079662738309270450atural @ B @ ( suc @ N ) ) )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
       => ( ord_le1926595141338095240atural @ A @ B ) ) ) ).

% power_le_imp_le_base
thf(fact_3669_power__le__imp__le__base,axiom,
    ! [A: rat,N: nat,B: rat] :
      ( ( ord_less_eq_rat @ ( power_power_rat @ A @ ( suc @ N ) ) @ ( power_power_rat @ B @ ( suc @ N ) ) )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
       => ( ord_less_eq_rat @ A @ B ) ) ) ).

% power_le_imp_le_base
thf(fact_3670_power__le__imp__le__base,axiom,
    ! [A: nat,N: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ A @ ( suc @ N ) ) @ ( power_power_nat @ B @ ( suc @ N ) ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_eq_nat @ A @ B ) ) ) ).

% power_le_imp_le_base
thf(fact_3671_power__le__imp__le__base,axiom,
    ! [A: int,N: nat,B: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ A @ ( suc @ N ) ) @ ( power_power_int @ B @ ( suc @ N ) ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ B )
       => ( ord_less_eq_int @ A @ B ) ) ) ).

% power_le_imp_le_base
thf(fact_3672_power__inject__base,axiom,
    ! [A: code_integer,N: nat,B: code_integer] :
      ( ( ( power_8256067586552552935nteger @ A @ ( suc @ N ) )
        = ( power_8256067586552552935nteger @ B @ ( suc @ N ) ) )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
         => ( A = B ) ) ) ) ).

% power_inject_base
thf(fact_3673_power__inject__base,axiom,
    ! [A: code_natural,N: nat,B: code_natural] :
      ( ( ( power_7079662738309270450atural @ A @ ( suc @ N ) )
        = ( power_7079662738309270450atural @ B @ ( suc @ N ) ) )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
       => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
         => ( A = B ) ) ) ) ).

% power_inject_base
thf(fact_3674_power__inject__base,axiom,
    ! [A: rat,N: nat,B: rat] :
      ( ( ( power_power_rat @ A @ ( suc @ N ) )
        = ( power_power_rat @ B @ ( suc @ N ) ) )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
         => ( A = B ) ) ) ) ).

% power_inject_base
thf(fact_3675_power__inject__base,axiom,
    ! [A: nat,N: nat,B: nat] :
      ( ( ( power_power_nat @ A @ ( suc @ N ) )
        = ( power_power_nat @ B @ ( suc @ N ) ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
         => ( A = B ) ) ) ) ).

% power_inject_base
thf(fact_3676_power__inject__base,axiom,
    ! [A: int,N: nat,B: int] :
      ( ( ( power_power_int @ A @ ( suc @ N ) )
        = ( power_power_int @ B @ ( suc @ N ) ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ A )
       => ( ( ord_less_eq_int @ zero_zero_int @ B )
         => ( A = B ) ) ) ) ).

% power_inject_base
thf(fact_3677_power__gt1__lemma,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
     => ( ord_le5570908160329646204atural @ one_one_Code_natural @ ( times_2397367101498566445atural @ A @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ).

% power_gt1_lemma
thf(fact_3678_power__gt1__lemma,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
     => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( times_3573771949741848930nteger @ A @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ).

% power_gt1_lemma
thf(fact_3679_power__gt1__lemma,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ord_less_rat @ one_one_rat @ ( times_times_rat @ A @ ( power_power_rat @ A @ N ) ) ) ) ).

% power_gt1_lemma
thf(fact_3680_power__gt1__lemma,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ord_less_nat @ one_one_nat @ ( times_times_nat @ A @ ( power_power_nat @ A @ N ) ) ) ) ).

% power_gt1_lemma
thf(fact_3681_power__gt1__lemma,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ord_less_int @ one_one_int @ ( times_times_int @ A @ ( power_power_int @ A @ N ) ) ) ) ).

% power_gt1_lemma
thf(fact_3682_power__less__power__Suc,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
     => ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ A @ N ) @ ( times_2397367101498566445atural @ A @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ).

% power_less_power_Suc
thf(fact_3683_power__less__power__Suc,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
     => ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ N ) @ ( times_3573771949741848930nteger @ A @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ).

% power_less_power_Suc
thf(fact_3684_power__less__power__Suc,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ord_less_rat @ ( power_power_rat @ A @ N ) @ ( times_times_rat @ A @ ( power_power_rat @ A @ N ) ) ) ) ).

% power_less_power_Suc
thf(fact_3685_power__less__power__Suc,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ord_less_nat @ ( power_power_nat @ A @ N ) @ ( times_times_nat @ A @ ( power_power_nat @ A @ N ) ) ) ) ).

% power_less_power_Suc
thf(fact_3686_power__less__power__Suc,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ord_less_int @ ( power_power_int @ A @ N ) @ ( times_times_int @ A @ ( power_power_int @ A @ N ) ) ) ) ).

% power_less_power_Suc
thf(fact_3687_power__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( power_8256067586552552935nteger @ zero_z3403309356797280102nteger @ N )
          = one_one_Code_integer ) )
      & ( ( N != zero_zero_nat )
       => ( ( power_8256067586552552935nteger @ zero_z3403309356797280102nteger @ N )
          = zero_z3403309356797280102nteger ) ) ) ).

% power_0_left
thf(fact_3688_power__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( power_power_rat @ zero_zero_rat @ N )
          = one_one_rat ) )
      & ( ( N != zero_zero_nat )
       => ( ( power_power_rat @ zero_zero_rat @ N )
          = zero_zero_rat ) ) ) ).

% power_0_left
thf(fact_3689_power__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( power_7079662738309270450atural @ zero_z2226904508553997617atural @ N )
          = one_one_Code_natural ) )
      & ( ( N != zero_zero_nat )
       => ( ( power_7079662738309270450atural @ zero_z2226904508553997617atural @ N )
          = zero_z2226904508553997617atural ) ) ) ).

% power_0_left
thf(fact_3690_power__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( power_power_int @ zero_zero_int @ N )
          = one_one_int ) )
      & ( ( N != zero_zero_nat )
       => ( ( power_power_int @ zero_zero_int @ N )
          = zero_zero_int ) ) ) ).

% power_0_left
thf(fact_3691_power__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( power_power_nat @ zero_zero_nat @ N )
          = one_one_nat ) )
      & ( ( N != zero_zero_nat )
       => ( ( power_power_nat @ zero_zero_nat @ N )
          = zero_zero_nat ) ) ) ).

% power_0_left
thf(fact_3692_power__gt1,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
     => ( ord_le5570908160329646204atural @ one_one_Code_natural @ ( power_7079662738309270450atural @ A @ ( suc @ N ) ) ) ) ).

% power_gt1
thf(fact_3693_power__gt1,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
     => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( power_8256067586552552935nteger @ A @ ( suc @ N ) ) ) ) ).

% power_gt1
thf(fact_3694_power__gt1,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ord_less_rat @ one_one_rat @ ( power_power_rat @ A @ ( suc @ N ) ) ) ) ).

% power_gt1
thf(fact_3695_power__gt1,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ord_less_nat @ one_one_nat @ ( power_power_nat @ A @ ( suc @ N ) ) ) ) ).

% power_gt1
thf(fact_3696_power__gt1,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ord_less_int @ one_one_int @ ( power_power_int @ A @ ( suc @ N ) ) ) ) ).

% power_gt1
thf(fact_3697_power__less__imp__less__exp,axiom,
    ! [A: code_natural,M: nat,N: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
     => ( ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ A @ M ) @ ( power_7079662738309270450atural @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_3698_power__less__imp__less__exp,axiom,
    ! [A: code_integer,M: nat,N: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
     => ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ M ) @ ( power_8256067586552552935nteger @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_3699_power__less__imp__less__exp,axiom,
    ! [A: rat,M: nat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ( ord_less_rat @ ( power_power_rat @ A @ M ) @ ( power_power_rat @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_3700_power__less__imp__less__exp,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ( ord_less_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_3701_power__less__imp__less__exp,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ( ord_less_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_3702_power__strict__increasing,axiom,
    ! [N: nat,N4: nat,A: code_natural] :
      ( ( ord_less_nat @ N @ N4 )
     => ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
       => ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ A @ N ) @ ( power_7079662738309270450atural @ A @ N4 ) ) ) ) ).

% power_strict_increasing
thf(fact_3703_power__strict__increasing,axiom,
    ! [N: nat,N4: nat,A: code_integer] :
      ( ( ord_less_nat @ N @ N4 )
     => ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
       => ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ N ) @ ( power_8256067586552552935nteger @ A @ N4 ) ) ) ) ).

% power_strict_increasing
thf(fact_3704_power__strict__increasing,axiom,
    ! [N: nat,N4: nat,A: rat] :
      ( ( ord_less_nat @ N @ N4 )
     => ( ( ord_less_rat @ one_one_rat @ A )
       => ( ord_less_rat @ ( power_power_rat @ A @ N ) @ ( power_power_rat @ A @ N4 ) ) ) ) ).

% power_strict_increasing
thf(fact_3705_power__strict__increasing,axiom,
    ! [N: nat,N4: nat,A: nat] :
      ( ( ord_less_nat @ N @ N4 )
     => ( ( ord_less_nat @ one_one_nat @ A )
       => ( ord_less_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ A @ N4 ) ) ) ) ).

% power_strict_increasing
thf(fact_3706_power__strict__increasing,axiom,
    ! [N: nat,N4: nat,A: int] :
      ( ( ord_less_nat @ N @ N4 )
     => ( ( ord_less_int @ one_one_int @ A )
       => ( ord_less_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ A @ N4 ) ) ) ) ).

% power_strict_increasing
thf(fact_3707_power__minus,axiom,
    ! [A: int,N: nat] :
      ( ( power_power_int @ ( uminus_uminus_int @ A ) @ N )
      = ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ ( power_power_int @ A @ N ) ) ) ).

% power_minus
thf(fact_3708_power__minus,axiom,
    ! [A: code_integer,N: nat] :
      ( ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ A ) @ N )
      = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N ) @ ( power_8256067586552552935nteger @ A @ N ) ) ) ).

% power_minus
thf(fact_3709_power__minus,axiom,
    ! [A: rat,N: nat] :
      ( ( power_power_rat @ ( uminus_uminus_rat @ A ) @ N )
      = ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) @ ( power_power_rat @ A @ N ) ) ) ).

% power_minus
thf(fact_3710_power__increasing,axiom,
    ! [N: nat,N4: nat,A: code_integer] :
      ( ( ord_less_eq_nat @ N @ N4 )
     => ( ( ord_le3102999989581377725nteger @ one_one_Code_integer @ A )
       => ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ N ) @ ( power_8256067586552552935nteger @ A @ N4 ) ) ) ) ).

% power_increasing
thf(fact_3711_power__increasing,axiom,
    ! [N: nat,N4: nat,A: code_natural] :
      ( ( ord_less_eq_nat @ N @ N4 )
     => ( ( ord_le1926595141338095240atural @ one_one_Code_natural @ A )
       => ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ N ) @ ( power_7079662738309270450atural @ A @ N4 ) ) ) ) ).

% power_increasing
thf(fact_3712_power__increasing,axiom,
    ! [N: nat,N4: nat,A: rat] :
      ( ( ord_less_eq_nat @ N @ N4 )
     => ( ( ord_less_eq_rat @ one_one_rat @ A )
       => ( ord_less_eq_rat @ ( power_power_rat @ A @ N ) @ ( power_power_rat @ A @ N4 ) ) ) ) ).

% power_increasing
thf(fact_3713_power__increasing,axiom,
    ! [N: nat,N4: nat,A: nat] :
      ( ( ord_less_eq_nat @ N @ N4 )
     => ( ( ord_less_eq_nat @ one_one_nat @ A )
       => ( ord_less_eq_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ A @ N4 ) ) ) ) ).

% power_increasing
thf(fact_3714_power__increasing,axiom,
    ! [N: nat,N4: nat,A: int] :
      ( ( ord_less_eq_nat @ N @ N4 )
     => ( ( ord_less_eq_int @ one_one_int @ A )
       => ( ord_less_eq_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ A @ N4 ) ) ) ) ).

% power_increasing
thf(fact_3715_zero__power,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( power_8256067586552552935nteger @ zero_z3403309356797280102nteger @ N )
        = zero_z3403309356797280102nteger ) ) ).

% zero_power
thf(fact_3716_zero__power,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( power_power_rat @ zero_zero_rat @ N )
        = zero_zero_rat ) ) ).

% zero_power
thf(fact_3717_zero__power,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( power_7079662738309270450atural @ zero_z2226904508553997617atural @ N )
        = zero_z2226904508553997617atural ) ) ).

% zero_power
thf(fact_3718_zero__power,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( power_power_int @ zero_zero_int @ N )
        = zero_zero_int ) ) ).

% zero_power
thf(fact_3719_zero__power,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( power_power_nat @ zero_zero_nat @ N )
        = zero_zero_nat ) ) ).

% zero_power
thf(fact_3720_zero__le__power__abs,axiom,
    ! [A: code_integer,N: nat] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( power_8256067586552552935nteger @ ( abs_abs_Code_integer @ A ) @ N ) ) ).

% zero_le_power_abs
thf(fact_3721_zero__le__power__abs,axiom,
    ! [A: rat,N: nat] : ( ord_less_eq_rat @ zero_zero_rat @ ( power_power_rat @ ( abs_abs_rat @ A ) @ N ) ) ).

% zero_le_power_abs
thf(fact_3722_zero__le__power__abs,axiom,
    ! [A: int,N: nat] : ( ord_less_eq_int @ zero_zero_int @ ( power_power_int @ ( abs_abs_int @ A ) @ N ) ) ).

% zero_le_power_abs
thf(fact_3723_fact__less__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ M @ N )
       => ( ord_le6747313008572928689nteger @ ( semiri3624122377584611663nteger @ M ) @ ( semiri3624122377584611663nteger @ N ) ) ) ) ).

% fact_less_mono
thf(fact_3724_fact__less__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ M @ N )
       => ( ord_less_rat @ ( semiri773545260158071498ct_rat @ M ) @ ( semiri773545260158071498ct_rat @ N ) ) ) ) ).

% fact_less_mono
thf(fact_3725_fact__less__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ M @ N )
       => ( ord_less_int @ ( semiri1406184849735516958ct_int @ M ) @ ( semiri1406184849735516958ct_int @ N ) ) ) ) ).

% fact_less_mono
thf(fact_3726_fact__less__mono,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ M @ N )
       => ( ord_less_nat @ ( semiri1408675320244567234ct_nat @ M ) @ ( semiri1408675320244567234ct_nat @ N ) ) ) ) ).

% fact_less_mono
thf(fact_3727_pochhammer__nonneg,axiom,
    ! [X2: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ X2 )
     => ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( comm_s7406298101470620109atural @ X2 @ N ) ) ) ).

% pochhammer_nonneg
thf(fact_3728_pochhammer__nonneg,axiom,
    ! [X2: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ X2 )
     => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( comm_s8582702949713902594nteger @ X2 @ N ) ) ) ).

% pochhammer_nonneg
thf(fact_3729_pochhammer__nonneg,axiom,
    ! [X2: rat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ X2 )
     => ( ord_less_eq_rat @ zero_zero_rat @ ( comm_s4028243227959126397er_rat @ X2 @ N ) ) ) ).

% pochhammer_nonneg
thf(fact_3730_pochhammer__nonneg,axiom,
    ! [X2: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ X2 )
     => ( ord_less_eq_nat @ zero_zero_nat @ ( comm_s4663373288045622133er_nat @ X2 @ N ) ) ) ).

% pochhammer_nonneg
thf(fact_3731_pochhammer__nonneg,axiom,
    ! [X2: int,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ X2 )
     => ( ord_less_eq_int @ zero_zero_int @ ( comm_s4660882817536571857er_int @ X2 @ N ) ) ) ).

% pochhammer_nonneg
thf(fact_3732_pochhammer__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( comm_s4663373288045622133er_nat @ zero_zero_nat @ N )
          = one_one_nat ) )
      & ( ( N != zero_zero_nat )
       => ( ( comm_s4663373288045622133er_nat @ zero_zero_nat @ N )
          = zero_zero_nat ) ) ) ).

% pochhammer_0_left
thf(fact_3733_pochhammer__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( comm_s4660882817536571857er_int @ zero_zero_int @ N )
          = one_one_int ) )
      & ( ( N != zero_zero_nat )
       => ( ( comm_s4660882817536571857er_int @ zero_zero_int @ N )
          = zero_zero_int ) ) ) ).

% pochhammer_0_left
thf(fact_3734_pochhammer__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( comm_s8582702949713902594nteger @ zero_z3403309356797280102nteger @ N )
          = one_one_Code_integer ) )
      & ( ( N != zero_zero_nat )
       => ( ( comm_s8582702949713902594nteger @ zero_z3403309356797280102nteger @ N )
          = zero_z3403309356797280102nteger ) ) ) ).

% pochhammer_0_left
thf(fact_3735_pochhammer__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( comm_s4028243227959126397er_rat @ zero_zero_rat @ N )
          = one_one_rat ) )
      & ( ( N != zero_zero_nat )
       => ( ( comm_s4028243227959126397er_rat @ zero_zero_rat @ N )
          = zero_zero_rat ) ) ) ).

% pochhammer_0_left
thf(fact_3736_pochhammer__0__left,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( comm_s7406298101470620109atural @ zero_z2226904508553997617atural @ N )
          = one_one_Code_natural ) )
      & ( ( N != zero_zero_nat )
       => ( ( comm_s7406298101470620109atural @ zero_z2226904508553997617atural @ N )
          = zero_z2226904508553997617atural ) ) ) ).

% pochhammer_0_left
thf(fact_3737_Suc__times__gbinomial,axiom,
    ! [K: nat,A: rat] :
      ( ( times_times_rat @ ( semiri681578069525770553at_rat @ ( suc @ K ) ) @ ( gbinomial_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( suc @ K ) ) )
      = ( times_times_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( gbinomial_rat @ A @ K ) ) ) ).

% Suc_times_gbinomial
thf(fact_3738_gbinomial__absorption,axiom,
    ! [K: nat,A: rat] :
      ( ( times_times_rat @ ( semiri681578069525770553at_rat @ ( suc @ K ) ) @ ( gbinomial_rat @ A @ ( suc @ K ) ) )
      = ( times_times_rat @ A @ ( gbinomial_rat @ ( minus_minus_rat @ A @ one_one_rat ) @ K ) ) ) ).

% gbinomial_absorption
thf(fact_3739_gbinomial__trinomial__revision,axiom,
    ! [K: nat,M: nat,A: rat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( times_times_rat @ ( gbinomial_rat @ A @ M ) @ ( gbinomial_rat @ ( semiri681578069525770553at_rat @ M ) @ K ) )
        = ( times_times_rat @ ( gbinomial_rat @ A @ K ) @ ( gbinomial_rat @ ( minus_minus_rat @ A @ ( semiri681578069525770553at_rat @ K ) ) @ ( minus_minus_nat @ M @ K ) ) ) ) ) ).

% gbinomial_trinomial_revision
thf(fact_3740_power__Suc__less,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ A @ one_one_Code_natural )
       => ( ord_le5570908160329646204atural @ ( times_2397367101498566445atural @ A @ ( power_7079662738309270450atural @ A @ N ) ) @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ).

% power_Suc_less
thf(fact_3741_power__Suc__less,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ A @ one_one_Code_integer )
       => ( ord_le6747313008572928689nteger @ ( times_3573771949741848930nteger @ A @ ( power_8256067586552552935nteger @ A @ N ) ) @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ).

% power_Suc_less
thf(fact_3742_power__Suc__less,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ A @ one_one_rat )
       => ( ord_less_rat @ ( times_times_rat @ A @ ( power_power_rat @ A @ N ) ) @ ( power_power_rat @ A @ N ) ) ) ) ).

% power_Suc_less
thf(fact_3743_power__Suc__less,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ A @ one_one_nat )
       => ( ord_less_nat @ ( times_times_nat @ A @ ( power_power_nat @ A @ N ) ) @ ( power_power_nat @ A @ N ) ) ) ) ).

% power_Suc_less
thf(fact_3744_power__Suc__less,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ A @ one_one_int )
       => ( ord_less_int @ ( times_times_int @ A @ ( power_power_int @ A @ N ) ) @ ( power_power_int @ A @ N ) ) ) ) ).

% power_Suc_less
thf(fact_3745_power__Suc__le__self,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le3102999989581377725nteger @ A @ one_one_Code_integer )
       => ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ ( suc @ N ) ) @ A ) ) ) ).

% power_Suc_le_self
thf(fact_3746_power__Suc__le__self,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le1926595141338095240atural @ A @ one_one_Code_natural )
       => ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ ( suc @ N ) ) @ A ) ) ) ).

% power_Suc_le_self
thf(fact_3747_power__Suc__le__self,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_eq_rat @ zero_zero_rat @ A )
     => ( ( ord_less_eq_rat @ A @ one_one_rat )
       => ( ord_less_eq_rat @ ( power_power_rat @ A @ ( suc @ N ) ) @ A ) ) ) ).

% power_Suc_le_self
thf(fact_3748_power__Suc__le__self,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ A @ one_one_nat )
       => ( ord_less_eq_nat @ ( power_power_nat @ A @ ( suc @ N ) ) @ A ) ) ) ).

% power_Suc_le_self
thf(fact_3749_power__Suc__le__self,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_eq_int @ A @ one_one_int )
       => ( ord_less_eq_int @ ( power_power_int @ A @ ( suc @ N ) ) @ A ) ) ) ).

% power_Suc_le_self
thf(fact_3750_power__Suc__less__one,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
     => ( ( ord_le5570908160329646204atural @ A @ one_one_Code_natural )
       => ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ A @ ( suc @ N ) ) @ one_one_Code_natural ) ) ) ).

% power_Suc_less_one
thf(fact_3751_power__Suc__less__one,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ A @ one_one_Code_integer )
       => ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ ( suc @ N ) ) @ one_one_Code_integer ) ) ) ).

% power_Suc_less_one
thf(fact_3752_power__Suc__less__one,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ zero_zero_rat @ A )
     => ( ( ord_less_rat @ A @ one_one_rat )
       => ( ord_less_rat @ ( power_power_rat @ A @ ( suc @ N ) ) @ one_one_rat ) ) ) ).

% power_Suc_less_one
thf(fact_3753_power__Suc__less__one,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ A @ one_one_nat )
       => ( ord_less_nat @ ( power_power_nat @ A @ ( suc @ N ) ) @ one_one_nat ) ) ) ).

% power_Suc_less_one
thf(fact_3754_power__Suc__less__one,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ A @ one_one_int )
       => ( ord_less_int @ ( power_power_int @ A @ ( suc @ N ) ) @ one_one_int ) ) ) ).

% power_Suc_less_one
thf(fact_3755_power__strict__decreasing,axiom,
    ! [N: nat,N4: nat,A: code_natural] :
      ( ( ord_less_nat @ N @ N4 )
     => ( ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ A )
       => ( ( ord_le5570908160329646204atural @ A @ one_one_Code_natural )
         => ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ A @ N4 ) @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ) ).

% power_strict_decreasing
thf(fact_3756_power__strict__decreasing,axiom,
    ! [N: nat,N4: nat,A: code_integer] :
      ( ( ord_less_nat @ N @ N4 )
     => ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ A )
       => ( ( ord_le6747313008572928689nteger @ A @ one_one_Code_integer )
         => ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ N4 ) @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ) ).

% power_strict_decreasing
thf(fact_3757_power__strict__decreasing,axiom,
    ! [N: nat,N4: nat,A: rat] :
      ( ( ord_less_nat @ N @ N4 )
     => ( ( ord_less_rat @ zero_zero_rat @ A )
       => ( ( ord_less_rat @ A @ one_one_rat )
         => ( ord_less_rat @ ( power_power_rat @ A @ N4 ) @ ( power_power_rat @ A @ N ) ) ) ) ) ).

% power_strict_decreasing
thf(fact_3758_power__strict__decreasing,axiom,
    ! [N: nat,N4: nat,A: nat] :
      ( ( ord_less_nat @ N @ N4 )
     => ( ( ord_less_nat @ zero_zero_nat @ A )
       => ( ( ord_less_nat @ A @ one_one_nat )
         => ( ord_less_nat @ ( power_power_nat @ A @ N4 ) @ ( power_power_nat @ A @ N ) ) ) ) ) ).

% power_strict_decreasing
thf(fact_3759_power__strict__decreasing,axiom,
    ! [N: nat,N4: nat,A: int] :
      ( ( ord_less_nat @ N @ N4 )
     => ( ( ord_less_int @ zero_zero_int @ A )
       => ( ( ord_less_int @ A @ one_one_int )
         => ( ord_less_int @ ( power_power_int @ A @ N4 ) @ ( power_power_int @ A @ N ) ) ) ) ) ).

% power_strict_decreasing
thf(fact_3760_power__decreasing,axiom,
    ! [N: nat,N4: nat,A: code_integer] :
      ( ( ord_less_eq_nat @ N @ N4 )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
       => ( ( ord_le3102999989581377725nteger @ A @ one_one_Code_integer )
         => ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ N4 ) @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ) ).

% power_decreasing
thf(fact_3761_power__decreasing,axiom,
    ! [N: nat,N4: nat,A: code_natural] :
      ( ( ord_less_eq_nat @ N @ N4 )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
       => ( ( ord_le1926595141338095240atural @ A @ one_one_Code_natural )
         => ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ N4 ) @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ) ).

% power_decreasing
thf(fact_3762_power__decreasing,axiom,
    ! [N: nat,N4: nat,A: rat] :
      ( ( ord_less_eq_nat @ N @ N4 )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ( ord_less_eq_rat @ A @ one_one_rat )
         => ( ord_less_eq_rat @ ( power_power_rat @ A @ N4 ) @ ( power_power_rat @ A @ N ) ) ) ) ) ).

% power_decreasing
thf(fact_3763_power__decreasing,axiom,
    ! [N: nat,N4: nat,A: nat] :
      ( ( ord_less_eq_nat @ N @ N4 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
       => ( ( ord_less_eq_nat @ A @ one_one_nat )
         => ( ord_less_eq_nat @ ( power_power_nat @ A @ N4 ) @ ( power_power_nat @ A @ N ) ) ) ) ) ).

% power_decreasing
thf(fact_3764_power__decreasing,axiom,
    ! [N: nat,N4: nat,A: int] :
      ( ( ord_less_eq_nat @ N @ N4 )
     => ( ( ord_less_eq_int @ zero_zero_int @ A )
       => ( ( ord_less_eq_int @ A @ one_one_int )
         => ( ord_less_eq_int @ ( power_power_int @ A @ N4 ) @ ( power_power_int @ A @ N ) ) ) ) ) ).

% power_decreasing
thf(fact_3765_power__eq__imp__eq__base,axiom,
    ! [A: code_integer,N: nat,B: code_integer] :
      ( ( ( power_8256067586552552935nteger @ A @ N )
        = ( power_8256067586552552935nteger @ B @ N ) )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
         => ( ( ord_less_nat @ zero_zero_nat @ N )
           => ( A = B ) ) ) ) ) ).

% power_eq_imp_eq_base
thf(fact_3766_power__eq__imp__eq__base,axiom,
    ! [A: code_natural,N: nat,B: code_natural] :
      ( ( ( power_7079662738309270450atural @ A @ N )
        = ( power_7079662738309270450atural @ B @ N ) )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
       => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
         => ( ( ord_less_nat @ zero_zero_nat @ N )
           => ( A = B ) ) ) ) ) ).

% power_eq_imp_eq_base
thf(fact_3767_power__eq__imp__eq__base,axiom,
    ! [A: rat,N: nat,B: rat] :
      ( ( ( power_power_rat @ A @ N )
        = ( power_power_rat @ B @ N ) )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
         => ( ( ord_less_nat @ zero_zero_nat @ N )
           => ( A = B ) ) ) ) ) ).

% power_eq_imp_eq_base
thf(fact_3768_power__eq__imp__eq__base,axiom,
    ! [A: nat,N: nat,B: nat] :
      ( ( ( power_power_nat @ A @ N )
        = ( power_power_nat @ B @ N ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
         => ( ( ord_less_nat @ zero_zero_nat @ N )
           => ( A = B ) ) ) ) ) ).

% power_eq_imp_eq_base
thf(fact_3769_power__eq__imp__eq__base,axiom,
    ! [A: int,N: nat,B: int] :
      ( ( ( power_power_int @ A @ N )
        = ( power_power_int @ B @ N ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ A )
       => ( ( ord_less_eq_int @ zero_zero_int @ B )
         => ( ( ord_less_nat @ zero_zero_nat @ N )
           => ( A = B ) ) ) ) ) ).

% power_eq_imp_eq_base
thf(fact_3770_power__eq__iff__eq__base,axiom,
    ! [N: nat,A: code_integer,B: code_integer] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
       => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ B )
         => ( ( ( power_8256067586552552935nteger @ A @ N )
              = ( power_8256067586552552935nteger @ B @ N ) )
            = ( A = B ) ) ) ) ) ).

% power_eq_iff_eq_base
thf(fact_3771_power__eq__iff__eq__base,axiom,
    ! [N: nat,A: code_natural,B: code_natural] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
       => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ B )
         => ( ( ( power_7079662738309270450atural @ A @ N )
              = ( power_7079662738309270450atural @ B @ N ) )
            = ( A = B ) ) ) ) ) ).

% power_eq_iff_eq_base
thf(fact_3772_power__eq__iff__eq__base,axiom,
    ! [N: nat,A: rat,B: rat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ( ord_less_eq_rat @ zero_zero_rat @ B )
         => ( ( ( power_power_rat @ A @ N )
              = ( power_power_rat @ B @ N ) )
            = ( A = B ) ) ) ) ) ).

% power_eq_iff_eq_base
thf(fact_3773_power__eq__iff__eq__base,axiom,
    ! [N: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
         => ( ( ( power_power_nat @ A @ N )
              = ( power_power_nat @ B @ N ) )
            = ( A = B ) ) ) ) ) ).

% power_eq_iff_eq_base
thf(fact_3774_power__eq__iff__eq__base,axiom,
    ! [N: nat,A: int,B: int] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_eq_int @ zero_zero_int @ A )
       => ( ( ord_less_eq_int @ zero_zero_int @ B )
         => ( ( ( power_power_int @ A @ N )
              = ( power_power_int @ B @ N ) )
            = ( A = B ) ) ) ) ) ).

% power_eq_iff_eq_base
thf(fact_3775_power__le__imp__le__exp,axiom,
    ! [A: code_natural,M: nat,N: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
     => ( ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ A @ M ) @ ( power_7079662738309270450atural @ A @ N ) )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_le_imp_le_exp
thf(fact_3776_power__le__imp__le__exp,axiom,
    ! [A: code_integer,M: nat,N: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
     => ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ A @ M ) @ ( power_8256067586552552935nteger @ A @ N ) )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_le_imp_le_exp
thf(fact_3777_power__le__imp__le__exp,axiom,
    ! [A: rat,M: nat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ( ord_less_eq_rat @ ( power_power_rat @ A @ M ) @ ( power_power_rat @ A @ N ) )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_le_imp_le_exp
thf(fact_3778_power__le__imp__le__exp,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ( ord_less_eq_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_le_imp_le_exp
thf(fact_3779_power__le__imp__le__exp,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ( ord_less_eq_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_le_imp_le_exp
thf(fact_3780_self__le__power,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le3102999989581377725nteger @ one_one_Code_integer @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_le3102999989581377725nteger @ A @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ).

% self_le_power
thf(fact_3781_self__le__power,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le1926595141338095240atural @ one_one_Code_natural @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_le1926595141338095240atural @ A @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ).

% self_le_power
thf(fact_3782_self__le__power,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_eq_rat @ one_one_rat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_rat @ A @ ( power_power_rat @ A @ N ) ) ) ) ).

% self_le_power
thf(fact_3783_self__le__power,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_eq_nat @ one_one_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_nat @ A @ ( power_power_nat @ A @ N ) ) ) ) ).

% self_le_power
thf(fact_3784_self__le__power,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_eq_int @ one_one_int @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_int @ A @ ( power_power_int @ A @ N ) ) ) ) ).

% self_le_power
thf(fact_3785_one__less__power,axiom,
    ! [A: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ one_one_Code_natural @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_le5570908160329646204atural @ one_one_Code_natural @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ).

% one_less_power
thf(fact_3786_one__less__power,axiom,
    ! [A: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ one_one_Code_integer @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ).

% one_less_power
thf(fact_3787_one__less__power,axiom,
    ! [A: rat,N: nat] :
      ( ( ord_less_rat @ one_one_rat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_rat @ one_one_rat @ ( power_power_rat @ A @ N ) ) ) ) ).

% one_less_power
thf(fact_3788_one__less__power,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_nat @ one_one_nat @ ( power_power_nat @ A @ N ) ) ) ) ).

% one_less_power
thf(fact_3789_one__less__power,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_int @ one_one_int @ ( power_power_int @ A @ N ) ) ) ) ).

% one_less_power
thf(fact_3790_power__diff,axiom,
    ! [A: nat,N: nat,M: nat] :
      ( ( A != zero_zero_nat )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( power_power_nat @ A @ ( minus_minus_nat @ M @ N ) )
          = ( divide_divide_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) ) ) ) ) ).

% power_diff
thf(fact_3791_power__diff,axiom,
    ! [A: int,N: nat,M: nat] :
      ( ( A != zero_zero_int )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( power_power_int @ A @ ( minus_minus_nat @ M @ N ) )
          = ( divide_divide_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) ) ) ) ) ).

% power_diff
thf(fact_3792_power__diff,axiom,
    ! [A: code_integer,N: nat,M: nat] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( power_8256067586552552935nteger @ A @ ( minus_minus_nat @ M @ N ) )
          = ( divide6298287555418463151nteger @ ( power_8256067586552552935nteger @ A @ M ) @ ( power_8256067586552552935nteger @ A @ N ) ) ) ) ) ).

% power_diff
thf(fact_3793_power__diff,axiom,
    ! [A: rat,N: nat,M: nat] :
      ( ( A != zero_zero_rat )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( power_power_rat @ A @ ( minus_minus_nat @ M @ N ) )
          = ( divide_divide_rat @ ( power_power_rat @ A @ M ) @ ( power_power_rat @ A @ N ) ) ) ) ) ).

% power_diff
thf(fact_3794_power__diff,axiom,
    ! [A: code_natural,N: nat,M: nat] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( ( power_7079662738309270450atural @ A @ ( minus_minus_nat @ M @ N ) )
          = ( divide5121882707175180666atural @ ( power_7079662738309270450atural @ A @ M ) @ ( power_7079662738309270450atural @ A @ N ) ) ) ) ) ).

% power_diff
thf(fact_3795_pochhammer__rec,axiom,
    ! [A: code_natural,N: nat] :
      ( ( comm_s7406298101470620109atural @ A @ ( suc @ N ) )
      = ( times_2397367101498566445atural @ A @ ( comm_s7406298101470620109atural @ ( plus_p4538020629002901425atural @ A @ one_one_Code_natural ) @ N ) ) ) ).

% pochhammer_rec
thf(fact_3796_pochhammer__rec,axiom,
    ! [A: code_integer,N: nat] :
      ( ( comm_s8582702949713902594nteger @ A @ ( suc @ N ) )
      = ( times_3573771949741848930nteger @ A @ ( comm_s8582702949713902594nteger @ ( plus_p5714425477246183910nteger @ A @ one_one_Code_integer ) @ N ) ) ) ).

% pochhammer_rec
thf(fact_3797_pochhammer__rec,axiom,
    ! [A: rat,N: nat] :
      ( ( comm_s4028243227959126397er_rat @ A @ ( suc @ N ) )
      = ( times_times_rat @ A @ ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ N ) ) ) ).

% pochhammer_rec
thf(fact_3798_pochhammer__rec,axiom,
    ! [A: nat,N: nat] :
      ( ( comm_s4663373288045622133er_nat @ A @ ( suc @ N ) )
      = ( times_times_nat @ A @ ( comm_s4663373288045622133er_nat @ ( plus_plus_nat @ A @ one_one_nat ) @ N ) ) ) ).

% pochhammer_rec
thf(fact_3799_pochhammer__rec,axiom,
    ! [A: int,N: nat] :
      ( ( comm_s4660882817536571857er_int @ A @ ( suc @ N ) )
      = ( times_times_int @ A @ ( comm_s4660882817536571857er_int @ ( plus_plus_int @ A @ one_one_int ) @ N ) ) ) ).

% pochhammer_rec
thf(fact_3800_pochhammer__Suc,axiom,
    ! [A: int,N: nat] :
      ( ( comm_s4660882817536571857er_int @ A @ ( suc @ N ) )
      = ( times_times_int @ ( comm_s4660882817536571857er_int @ A @ N ) @ ( plus_plus_int @ A @ ( semiri1314217659103216013at_int @ N ) ) ) ) ).

% pochhammer_Suc
thf(fact_3801_pochhammer__Suc,axiom,
    ! [A: nat,N: nat] :
      ( ( comm_s4663373288045622133er_nat @ A @ ( suc @ N ) )
      = ( times_times_nat @ ( comm_s4663373288045622133er_nat @ A @ N ) @ ( plus_plus_nat @ A @ ( semiri1316708129612266289at_nat @ N ) ) ) ) ).

% pochhammer_Suc
thf(fact_3802_pochhammer__Suc,axiom,
    ! [A: code_integer,N: nat] :
      ( ( comm_s8582702949713902594nteger @ A @ ( suc @ N ) )
      = ( times_3573771949741848930nteger @ ( comm_s8582702949713902594nteger @ A @ N ) @ ( plus_p5714425477246183910nteger @ A @ ( semiri4939895301339042750nteger @ N ) ) ) ) ).

% pochhammer_Suc
thf(fact_3803_pochhammer__Suc,axiom,
    ! [A: rat,N: nat] :
      ( ( comm_s4028243227959126397er_rat @ A @ ( suc @ N ) )
      = ( times_times_rat @ ( comm_s4028243227959126397er_rat @ A @ N ) @ ( plus_plus_rat @ A @ ( semiri681578069525770553at_rat @ N ) ) ) ) ).

% pochhammer_Suc
thf(fact_3804_pochhammer__Suc,axiom,
    ! [A: code_natural,N: nat] :
      ( ( comm_s7406298101470620109atural @ A @ ( suc @ N ) )
      = ( times_2397367101498566445atural @ ( comm_s7406298101470620109atural @ A @ N ) @ ( plus_p4538020629002901425atural @ A @ ( semiri3763490453095760265atural @ N ) ) ) ) ).

% pochhammer_Suc
thf(fact_3805_pochhammer__rec_H,axiom,
    ! [Z2: int,N: nat] :
      ( ( comm_s4660882817536571857er_int @ Z2 @ ( suc @ N ) )
      = ( times_times_int @ ( plus_plus_int @ Z2 @ ( semiri1314217659103216013at_int @ N ) ) @ ( comm_s4660882817536571857er_int @ Z2 @ N ) ) ) ).

% pochhammer_rec'
thf(fact_3806_pochhammer__rec_H,axiom,
    ! [Z2: nat,N: nat] :
      ( ( comm_s4663373288045622133er_nat @ Z2 @ ( suc @ N ) )
      = ( times_times_nat @ ( plus_plus_nat @ Z2 @ ( semiri1316708129612266289at_nat @ N ) ) @ ( comm_s4663373288045622133er_nat @ Z2 @ N ) ) ) ).

% pochhammer_rec'
thf(fact_3807_pochhammer__rec_H,axiom,
    ! [Z2: code_integer,N: nat] :
      ( ( comm_s8582702949713902594nteger @ Z2 @ ( suc @ N ) )
      = ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ Z2 @ ( semiri4939895301339042750nteger @ N ) ) @ ( comm_s8582702949713902594nteger @ Z2 @ N ) ) ) ).

% pochhammer_rec'
thf(fact_3808_pochhammer__rec_H,axiom,
    ! [Z2: rat,N: nat] :
      ( ( comm_s4028243227959126397er_rat @ Z2 @ ( suc @ N ) )
      = ( times_times_rat @ ( plus_plus_rat @ Z2 @ ( semiri681578069525770553at_rat @ N ) ) @ ( comm_s4028243227959126397er_rat @ Z2 @ N ) ) ) ).

% pochhammer_rec'
thf(fact_3809_pochhammer__rec_H,axiom,
    ! [Z2: code_natural,N: nat] :
      ( ( comm_s7406298101470620109atural @ Z2 @ ( suc @ N ) )
      = ( times_2397367101498566445atural @ ( plus_p4538020629002901425atural @ Z2 @ ( semiri3763490453095760265atural @ N ) ) @ ( comm_s7406298101470620109atural @ Z2 @ N ) ) ) ).

% pochhammer_rec'
thf(fact_3810_pochhammer__eq__0__iff,axiom,
    ! [A: rat,N: nat] :
      ( ( ( comm_s4028243227959126397er_rat @ A @ N )
        = zero_zero_rat )
      = ( ? [K2: nat] :
            ( ( ord_less_nat @ K2 @ N )
            & ( A
              = ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ K2 ) ) ) ) ) ) ).

% pochhammer_eq_0_iff
thf(fact_3811_pochhammer__of__nat__eq__0__iff,axiom,
    ! [N: nat,K: nat] :
      ( ( ( comm_s4660882817536571857er_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) @ K )
        = zero_zero_int )
      = ( ord_less_nat @ N @ K ) ) ).

% pochhammer_of_nat_eq_0_iff
thf(fact_3812_pochhammer__of__nat__eq__0__iff,axiom,
    ! [N: nat,K: nat] :
      ( ( ( comm_s8582702949713902594nteger @ ( uminus1351360451143612070nteger @ ( semiri4939895301339042750nteger @ N ) ) @ K )
        = zero_z3403309356797280102nteger )
      = ( ord_less_nat @ N @ K ) ) ).

% pochhammer_of_nat_eq_0_iff
thf(fact_3813_pochhammer__of__nat__eq__0__iff,axiom,
    ! [N: nat,K: nat] :
      ( ( ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ N ) ) @ K )
        = zero_zero_rat )
      = ( ord_less_nat @ N @ K ) ) ).

% pochhammer_of_nat_eq_0_iff
thf(fact_3814_pochhammer__of__nat__eq__0__lemma,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ N @ K )
     => ( ( comm_s4660882817536571857er_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) @ K )
        = zero_zero_int ) ) ).

% pochhammer_of_nat_eq_0_lemma
thf(fact_3815_pochhammer__of__nat__eq__0__lemma,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ N @ K )
     => ( ( comm_s8582702949713902594nteger @ ( uminus1351360451143612070nteger @ ( semiri4939895301339042750nteger @ N ) ) @ K )
        = zero_z3403309356797280102nteger ) ) ).

% pochhammer_of_nat_eq_0_lemma
thf(fact_3816_pochhammer__of__nat__eq__0__lemma,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ N @ K )
     => ( ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ N ) ) @ K )
        = zero_zero_rat ) ) ).

% pochhammer_of_nat_eq_0_lemma
thf(fact_3817_gbinomial__rec,axiom,
    ! [A: rat,K: nat] :
      ( ( gbinomial_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( suc @ K ) )
      = ( times_times_rat @ ( gbinomial_rat @ A @ K ) @ ( divide_divide_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( semiri681578069525770553at_rat @ ( suc @ K ) ) ) ) ) ).

% gbinomial_rec
thf(fact_3818_gbinomial__factors,axiom,
    ! [A: rat,K: nat] :
      ( ( gbinomial_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( suc @ K ) )
      = ( times_times_rat @ ( divide_divide_rat @ ( plus_plus_rat @ A @ one_one_rat ) @ ( semiri681578069525770553at_rat @ ( suc @ K ) ) ) @ ( gbinomial_rat @ A @ K ) ) ) ).

% gbinomial_factors
thf(fact_3819_pochhammer__of__nat__eq__0__lemma_H,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( comm_s4660882817536571857er_int @ ( uminus_uminus_int @ ( semiri1314217659103216013at_int @ N ) ) @ K )
       != zero_zero_int ) ) ).

% pochhammer_of_nat_eq_0_lemma'
thf(fact_3820_pochhammer__of__nat__eq__0__lemma_H,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( comm_s8582702949713902594nteger @ ( uminus1351360451143612070nteger @ ( semiri4939895301339042750nteger @ N ) ) @ K )
       != zero_z3403309356797280102nteger ) ) ).

% pochhammer_of_nat_eq_0_lemma'
thf(fact_3821_pochhammer__of__nat__eq__0__lemma_H,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( comm_s4028243227959126397er_rat @ ( uminus_uminus_rat @ ( semiri681578069525770553at_rat @ N ) ) @ K )
       != zero_zero_rat ) ) ).

% pochhammer_of_nat_eq_0_lemma'
thf(fact_3822_pochhammer__product_H,axiom,
    ! [Z2: int,N: nat,M: nat] :
      ( ( comm_s4660882817536571857er_int @ Z2 @ ( plus_plus_nat @ N @ M ) )
      = ( times_times_int @ ( comm_s4660882817536571857er_int @ Z2 @ N ) @ ( comm_s4660882817536571857er_int @ ( plus_plus_int @ Z2 @ ( semiri1314217659103216013at_int @ N ) ) @ M ) ) ) ).

% pochhammer_product'
thf(fact_3823_pochhammer__product_H,axiom,
    ! [Z2: nat,N: nat,M: nat] :
      ( ( comm_s4663373288045622133er_nat @ Z2 @ ( plus_plus_nat @ N @ M ) )
      = ( times_times_nat @ ( comm_s4663373288045622133er_nat @ Z2 @ N ) @ ( comm_s4663373288045622133er_nat @ ( plus_plus_nat @ Z2 @ ( semiri1316708129612266289at_nat @ N ) ) @ M ) ) ) ).

% pochhammer_product'
thf(fact_3824_pochhammer__product_H,axiom,
    ! [Z2: code_integer,N: nat,M: nat] :
      ( ( comm_s8582702949713902594nteger @ Z2 @ ( plus_plus_nat @ N @ M ) )
      = ( times_3573771949741848930nteger @ ( comm_s8582702949713902594nteger @ Z2 @ N ) @ ( comm_s8582702949713902594nteger @ ( plus_p5714425477246183910nteger @ Z2 @ ( semiri4939895301339042750nteger @ N ) ) @ M ) ) ) ).

% pochhammer_product'
thf(fact_3825_pochhammer__product_H,axiom,
    ! [Z2: rat,N: nat,M: nat] :
      ( ( comm_s4028243227959126397er_rat @ Z2 @ ( plus_plus_nat @ N @ M ) )
      = ( times_times_rat @ ( comm_s4028243227959126397er_rat @ Z2 @ N ) @ ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ Z2 @ ( semiri681578069525770553at_rat @ N ) ) @ M ) ) ) ).

% pochhammer_product'
thf(fact_3826_pochhammer__product_H,axiom,
    ! [Z2: code_natural,N: nat,M: nat] :
      ( ( comm_s7406298101470620109atural @ Z2 @ ( plus_plus_nat @ N @ M ) )
      = ( times_2397367101498566445atural @ ( comm_s7406298101470620109atural @ Z2 @ N ) @ ( comm_s7406298101470620109atural @ ( plus_p4538020629002901425atural @ Z2 @ ( semiri3763490453095760265atural @ N ) ) @ M ) ) ) ).

% pochhammer_product'
thf(fact_3827_power__minus_H,axiom,
    ! [X2: int,N: nat] :
      ( ( nO_MATCH_int_int @ one_one_int @ X2 )
     => ( ( power_power_int @ ( uminus_uminus_int @ X2 ) @ N )
        = ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ ( power_power_int @ X2 @ N ) ) ) ) ).

% power_minus'
thf(fact_3828_power__minus_H,axiom,
    ! [X2: code_integer,N: nat] :
      ( ( nO_MAT8252062027627875367nteger @ one_one_Code_integer @ X2 )
     => ( ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ X2 ) @ N )
        = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ N ) @ ( power_8256067586552552935nteger @ X2 @ N ) ) ) ) ).

% power_minus'
thf(fact_3829_power__minus_H,axiom,
    ! [X2: rat,N: nat] :
      ( ( nO_MATCH_rat_rat @ one_one_rat @ X2 )
     => ( ( power_power_rat @ ( uminus_uminus_rat @ X2 ) @ N )
        = ( times_times_rat @ ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ N ) @ ( power_power_rat @ X2 @ N ) ) ) ) ).

% power_minus'
thf(fact_3830_power__strict__mono,axiom,
    ! [A: code_natural,B: code_natural,N: nat] :
      ( ( ord_le5570908160329646204atural @ A @ B )
     => ( ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ A )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ A @ N ) @ ( power_7079662738309270450atural @ B @ N ) ) ) ) ) ).

% power_strict_mono
thf(fact_3831_power__strict__mono,axiom,
    ! [A: code_integer,B: code_integer,N: nat] :
      ( ( ord_le6747313008572928689nteger @ A @ B )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ A @ N ) @ ( power_8256067586552552935nteger @ B @ N ) ) ) ) ) ).

% power_strict_mono
thf(fact_3832_power__strict__mono,axiom,
    ! [A: rat,B: rat,N: nat] :
      ( ( ord_less_rat @ A @ B )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ A )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ord_less_rat @ ( power_power_rat @ A @ N ) @ ( power_power_rat @ B @ N ) ) ) ) ) ).

% power_strict_mono
thf(fact_3833_power__strict__mono,axiom,
    ! [A: nat,B: nat,N: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ord_less_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ B @ N ) ) ) ) ) ).

% power_strict_mono
thf(fact_3834_power__strict__mono,axiom,
    ! [A: int,B: int,N: nat] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_eq_int @ zero_zero_int @ A )
       => ( ( ord_less_nat @ zero_zero_nat @ N )
         => ( ord_less_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ B @ N ) ) ) ) ) ).

% power_strict_mono
thf(fact_3835_power__diff__power__eq,axiom,
    ! [A: nat,N: nat,M: nat] :
      ( ( A != zero_zero_nat )
     => ( ( ( ord_less_eq_nat @ N @ M )
         => ( ( divide_divide_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) )
            = ( power_power_nat @ A @ ( minus_minus_nat @ M @ N ) ) ) )
        & ( ~ ( ord_less_eq_nat @ N @ M )
         => ( ( divide_divide_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) )
            = ( divide_divide_nat @ one_one_nat @ ( power_power_nat @ A @ ( minus_minus_nat @ N @ M ) ) ) ) ) ) ) ).

% power_diff_power_eq
thf(fact_3836_power__diff__power__eq,axiom,
    ! [A: int,N: nat,M: nat] :
      ( ( A != zero_zero_int )
     => ( ( ( ord_less_eq_nat @ N @ M )
         => ( ( divide_divide_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) )
            = ( power_power_int @ A @ ( minus_minus_nat @ M @ N ) ) ) )
        & ( ~ ( ord_less_eq_nat @ N @ M )
         => ( ( divide_divide_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) )
            = ( divide_divide_int @ one_one_int @ ( power_power_int @ A @ ( minus_minus_nat @ N @ M ) ) ) ) ) ) ) ).

% power_diff_power_eq
thf(fact_3837_power__diff__power__eq,axiom,
    ! [A: code_integer,N: nat,M: nat] :
      ( ( A != zero_z3403309356797280102nteger )
     => ( ( ( ord_less_eq_nat @ N @ M )
         => ( ( divide6298287555418463151nteger @ ( power_8256067586552552935nteger @ A @ M ) @ ( power_8256067586552552935nteger @ A @ N ) )
            = ( power_8256067586552552935nteger @ A @ ( minus_minus_nat @ M @ N ) ) ) )
        & ( ~ ( ord_less_eq_nat @ N @ M )
         => ( ( divide6298287555418463151nteger @ ( power_8256067586552552935nteger @ A @ M ) @ ( power_8256067586552552935nteger @ A @ N ) )
            = ( divide6298287555418463151nteger @ one_one_Code_integer @ ( power_8256067586552552935nteger @ A @ ( minus_minus_nat @ N @ M ) ) ) ) ) ) ) ).

% power_diff_power_eq
thf(fact_3838_power__diff__power__eq,axiom,
    ! [A: code_natural,N: nat,M: nat] :
      ( ( A != zero_z2226904508553997617atural )
     => ( ( ( ord_less_eq_nat @ N @ M )
         => ( ( divide5121882707175180666atural @ ( power_7079662738309270450atural @ A @ M ) @ ( power_7079662738309270450atural @ A @ N ) )
            = ( power_7079662738309270450atural @ A @ ( minus_minus_nat @ M @ N ) ) ) )
        & ( ~ ( ord_less_eq_nat @ N @ M )
         => ( ( divide5121882707175180666atural @ ( power_7079662738309270450atural @ A @ M ) @ ( power_7079662738309270450atural @ A @ N ) )
            = ( divide5121882707175180666atural @ one_one_Code_natural @ ( power_7079662738309270450atural @ A @ ( minus_minus_nat @ N @ M ) ) ) ) ) ) ) ).

% power_diff_power_eq
thf(fact_3839_power__eq__if,axiom,
    ( power_7079662738309270450atural
    = ( ^ [P6: code_natural,M2: nat] : ( if_Code_natural @ ( M2 = zero_zero_nat ) @ one_one_Code_natural @ ( times_2397367101498566445atural @ P6 @ ( power_7079662738309270450atural @ P6 @ ( minus_minus_nat @ M2 @ one_one_nat ) ) ) ) ) ) ).

% power_eq_if
thf(fact_3840_power__eq__if,axiom,
    ( power_8256067586552552935nteger
    = ( ^ [P6: code_integer,M2: nat] : ( if_Code_integer @ ( M2 = zero_zero_nat ) @ one_one_Code_integer @ ( times_3573771949741848930nteger @ P6 @ ( power_8256067586552552935nteger @ P6 @ ( minus_minus_nat @ M2 @ one_one_nat ) ) ) ) ) ) ).

% power_eq_if
thf(fact_3841_power__eq__if,axiom,
    ( power_power_rat
    = ( ^ [P6: rat,M2: nat] : ( if_rat @ ( M2 = zero_zero_nat ) @ one_one_rat @ ( times_times_rat @ P6 @ ( power_power_rat @ P6 @ ( minus_minus_nat @ M2 @ one_one_nat ) ) ) ) ) ) ).

% power_eq_if
thf(fact_3842_power__eq__if,axiom,
    ( power_power_nat
    = ( ^ [P6: nat,M2: nat] : ( if_nat @ ( M2 = zero_zero_nat ) @ one_one_nat @ ( times_times_nat @ P6 @ ( power_power_nat @ P6 @ ( minus_minus_nat @ M2 @ one_one_nat ) ) ) ) ) ) ).

% power_eq_if
thf(fact_3843_power__eq__if,axiom,
    ( power_power_int
    = ( ^ [P6: int,M2: nat] : ( if_int @ ( M2 = zero_zero_nat ) @ one_one_int @ ( times_times_int @ P6 @ ( power_power_int @ P6 @ ( minus_minus_nat @ M2 @ one_one_nat ) ) ) ) ) ) ).

% power_eq_if
thf(fact_3844_neg__one__power__add__eq__neg__one__power__diff,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ ( plus_plus_nat @ N @ K ) )
        = ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ ( minus_minus_nat @ N @ K ) ) ) ) ).

% neg_one_power_add_eq_neg_one_power_diff
thf(fact_3845_neg__one__power__add__eq__neg__one__power__diff,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( plus_plus_nat @ N @ K ) )
        = ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( minus_minus_nat @ N @ K ) ) ) ) ).

% neg_one_power_add_eq_neg_one_power_diff
thf(fact_3846_neg__one__power__add__eq__neg__one__power__diff,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( plus_plus_nat @ N @ K ) )
        = ( power_power_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( minus_minus_nat @ N @ K ) ) ) ) ).

% neg_one_power_add_eq_neg_one_power_diff
thf(fact_3847_power__minus__mult,axiom,
    ! [N: nat,A: code_integer] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ A @ ( minus_minus_nat @ N @ one_one_nat ) ) @ A )
        = ( power_8256067586552552935nteger @ A @ N ) ) ) ).

% power_minus_mult
thf(fact_3848_power__minus__mult,axiom,
    ! [N: nat,A: rat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( times_times_rat @ ( power_power_rat @ A @ ( minus_minus_nat @ N @ one_one_nat ) ) @ A )
        = ( power_power_rat @ A @ N ) ) ) ).

% power_minus_mult
thf(fact_3849_power__minus__mult,axiom,
    ! [N: nat,A: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( times_times_nat @ ( power_power_nat @ A @ ( minus_minus_nat @ N @ one_one_nat ) ) @ A )
        = ( power_power_nat @ A @ N ) ) ) ).

% power_minus_mult
thf(fact_3850_power__minus__mult,axiom,
    ! [N: nat,A: int] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( times_times_int @ ( power_power_int @ A @ ( minus_minus_nat @ N @ one_one_nat ) ) @ A )
        = ( power_power_int @ A @ N ) ) ) ).

% power_minus_mult
thf(fact_3851_gbinomial__reduce__nat,axiom,
    ! [K: nat,A: rat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( gbinomial_rat @ A @ K )
        = ( plus_plus_rat @ ( gbinomial_rat @ ( minus_minus_rat @ A @ one_one_rat ) @ ( minus_minus_nat @ K @ one_one_nat ) ) @ ( gbinomial_rat @ ( minus_minus_rat @ A @ one_one_rat ) @ K ) ) ) ) ).

% gbinomial_reduce_nat
thf(fact_3852_pochhammer__product,axiom,
    ! [M: nat,N: nat,Z2: int] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( comm_s4660882817536571857er_int @ Z2 @ N )
        = ( times_times_int @ ( comm_s4660882817536571857er_int @ Z2 @ M ) @ ( comm_s4660882817536571857er_int @ ( plus_plus_int @ Z2 @ ( semiri1314217659103216013at_int @ M ) ) @ ( minus_minus_nat @ N @ M ) ) ) ) ) ).

% pochhammer_product
thf(fact_3853_pochhammer__product,axiom,
    ! [M: nat,N: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( comm_s4663373288045622133er_nat @ Z2 @ N )
        = ( times_times_nat @ ( comm_s4663373288045622133er_nat @ Z2 @ M ) @ ( comm_s4663373288045622133er_nat @ ( plus_plus_nat @ Z2 @ ( semiri1316708129612266289at_nat @ M ) ) @ ( minus_minus_nat @ N @ M ) ) ) ) ) ).

% pochhammer_product
thf(fact_3854_pochhammer__product,axiom,
    ! [M: nat,N: nat,Z2: code_integer] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( comm_s8582702949713902594nteger @ Z2 @ N )
        = ( times_3573771949741848930nteger @ ( comm_s8582702949713902594nteger @ Z2 @ M ) @ ( comm_s8582702949713902594nteger @ ( plus_p5714425477246183910nteger @ Z2 @ ( semiri4939895301339042750nteger @ M ) ) @ ( minus_minus_nat @ N @ M ) ) ) ) ) ).

% pochhammer_product
thf(fact_3855_pochhammer__product,axiom,
    ! [M: nat,N: nat,Z2: rat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( comm_s4028243227959126397er_rat @ Z2 @ N )
        = ( times_times_rat @ ( comm_s4028243227959126397er_rat @ Z2 @ M ) @ ( comm_s4028243227959126397er_rat @ ( plus_plus_rat @ Z2 @ ( semiri681578069525770553at_rat @ M ) ) @ ( minus_minus_nat @ N @ M ) ) ) ) ) ).

% pochhammer_product
thf(fact_3856_pochhammer__product,axiom,
    ! [M: nat,N: nat,Z2: code_natural] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( comm_s7406298101470620109atural @ Z2 @ N )
        = ( times_2397367101498566445atural @ ( comm_s7406298101470620109atural @ Z2 @ M ) @ ( comm_s7406298101470620109atural @ ( plus_p4538020629002901425atural @ Z2 @ ( semiri3763490453095760265atural @ M ) ) @ ( minus_minus_nat @ N @ M ) ) ) ) ) ).

% pochhammer_product
thf(fact_3857_fact__num__eq__if,axiom,
    ( semiri1406184849735516958ct_int
    = ( ^ [M2: nat] : ( if_int @ ( M2 = zero_zero_nat ) @ one_one_int @ ( times_times_int @ ( semiri1314217659103216013at_int @ M2 ) @ ( semiri1406184849735516958ct_int @ ( minus_minus_nat @ M2 @ one_one_nat ) ) ) ) ) ) ).

% fact_num_eq_if
thf(fact_3858_fact__num__eq__if,axiom,
    ( semiri3624122377584611663nteger
    = ( ^ [M2: nat] : ( if_Code_integer @ ( M2 = zero_zero_nat ) @ one_one_Code_integer @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ M2 ) @ ( semiri3624122377584611663nteger @ ( minus_minus_nat @ M2 @ one_one_nat ) ) ) ) ) ) ).

% fact_num_eq_if
thf(fact_3859_fact__num__eq__if,axiom,
    ( semiri773545260158071498ct_rat
    = ( ^ [M2: nat] : ( if_rat @ ( M2 = zero_zero_nat ) @ one_one_rat @ ( times_times_rat @ ( semiri681578069525770553at_rat @ M2 ) @ ( semiri773545260158071498ct_rat @ ( minus_minus_nat @ M2 @ one_one_nat ) ) ) ) ) ) ).

% fact_num_eq_if
thf(fact_3860_fact__num__eq__if,axiom,
    ( semiri2447717529341329178atural
    = ( ^ [M2: nat] : ( if_Code_natural @ ( M2 = zero_zero_nat ) @ one_one_Code_natural @ ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ M2 ) @ ( semiri2447717529341329178atural @ ( minus_minus_nat @ M2 @ one_one_nat ) ) ) ) ) ) ).

% fact_num_eq_if
thf(fact_3861_fact__num__eq__if,axiom,
    ( semiri1408675320244567234ct_nat
    = ( ^ [M2: nat] : ( if_nat @ ( M2 = zero_zero_nat ) @ one_one_nat @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ M2 ) @ ( semiri1408675320244567234ct_nat @ ( minus_minus_nat @ M2 @ one_one_nat ) ) ) ) ) ) ).

% fact_num_eq_if
thf(fact_3862_gbinomial__code,axiom,
    ( gbinomial_rat
    = ( ^ [A2: rat,K2: nat] :
          ( if_rat @ ( K2 = zero_zero_nat ) @ one_one_rat
          @ ( divide_divide_rat
            @ ( set_fo1949268297981939178at_rat
              @ ^ [L2: nat] : ( times_times_rat @ ( minus_minus_rat @ A2 @ ( semiri681578069525770553at_rat @ L2 ) ) )
              @ zero_zero_nat
              @ ( minus_minus_nat @ K2 @ one_one_nat )
              @ one_one_rat )
            @ ( semiri773545260158071498ct_rat @ K2 ) ) ) ) ) ).

% gbinomial_code
thf(fact_3863_pochhammer__code,axiom,
    ( comm_s4660882817536571857er_int
    = ( ^ [A2: int,N3: nat] :
          ( if_int @ ( N3 = zero_zero_nat ) @ one_one_int
          @ ( set_fo2581907887559384638at_int
            @ ^ [O: nat] : ( times_times_int @ ( plus_plus_int @ A2 @ ( semiri1314217659103216013at_int @ O ) ) )
            @ zero_zero_nat
            @ ( minus_minus_nat @ N3 @ one_one_nat )
            @ one_one_int ) ) ) ) ).

% pochhammer_code
thf(fact_3864_pochhammer__code,axiom,
    ( comm_s8582702949713902594nteger
    = ( ^ [A2: code_integer,N3: nat] :
          ( if_Code_integer @ ( N3 = zero_zero_nat ) @ one_one_Code_integer
          @ ( set_fo1084959871951514735nteger
            @ ^ [O: nat] : ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A2 @ ( semiri4939895301339042750nteger @ O ) ) )
            @ zero_zero_nat
            @ ( minus_minus_nat @ N3 @ one_one_nat )
            @ one_one_Code_integer ) ) ) ) ).

% pochhammer_code
thf(fact_3865_pochhammer__code,axiom,
    ( comm_s4028243227959126397er_rat
    = ( ^ [A2: rat,N3: nat] :
          ( if_rat @ ( N3 = zero_zero_nat ) @ one_one_rat
          @ ( set_fo1949268297981939178at_rat
            @ ^ [O: nat] : ( times_times_rat @ ( plus_plus_rat @ A2 @ ( semiri681578069525770553at_rat @ O ) ) )
            @ zero_zero_nat
            @ ( minus_minus_nat @ N3 @ one_one_nat )
            @ one_one_rat ) ) ) ) ).

% pochhammer_code
thf(fact_3866_pochhammer__code,axiom,
    ( comm_s7406298101470620109atural
    = ( ^ [A2: code_natural,N3: nat] :
          ( if_Code_natural @ ( N3 = zero_zero_nat ) @ one_one_Code_natural
          @ ( set_fo9131927060563008058atural
            @ ^ [O: nat] : ( times_2397367101498566445atural @ ( plus_p4538020629002901425atural @ A2 @ ( semiri3763490453095760265atural @ O ) ) )
            @ zero_zero_nat
            @ ( minus_minus_nat @ N3 @ one_one_nat )
            @ one_one_Code_natural ) ) ) ) ).

% pochhammer_code
thf(fact_3867_pochhammer__code,axiom,
    ( comm_s4663373288045622133er_nat
    = ( ^ [A2: nat,N3: nat] :
          ( if_nat @ ( N3 = zero_zero_nat ) @ one_one_nat
          @ ( set_fo2584398358068434914at_nat
            @ ^ [O: nat] : ( times_times_nat @ ( plus_plus_nat @ A2 @ ( semiri1316708129612266289at_nat @ O ) ) )
            @ zero_zero_nat
            @ ( minus_minus_nat @ N3 @ one_one_nat )
            @ one_one_nat ) ) ) ) ).

% pochhammer_code
thf(fact_3868_slice__nth,axiom,
    ! [From: nat,To: nat,Xs: list_nat,I: nat] :
      ( ( ord_less_nat @ From @ To )
     => ( ( ord_less_eq_nat @ To @ ( size_size_list_nat @ Xs ) )
       => ( ( ord_less_nat @ I @ ( minus_minus_nat @ To @ From ) )
         => ( ( nth_nat @ ( slice_nat @ From @ To @ Xs ) @ I )
            = ( nth_nat @ Xs @ ( plus_plus_nat @ From @ I ) ) ) ) ) ) ).

% slice_nth
thf(fact_3869_slice__nth,axiom,
    ! [From: nat,To: nat,Xs: list_int,I: nat] :
      ( ( ord_less_nat @ From @ To )
     => ( ( ord_less_eq_nat @ To @ ( size_size_list_int @ Xs ) )
       => ( ( ord_less_nat @ I @ ( minus_minus_nat @ To @ From ) )
         => ( ( nth_int @ ( slice_int @ From @ To @ Xs ) @ I )
            = ( nth_int @ Xs @ ( plus_plus_nat @ From @ I ) ) ) ) ) ) ).

% slice_nth
thf(fact_3870_slice__nth,axiom,
    ! [From: nat,To: nat,Xs: list_o,I: nat] :
      ( ( ord_less_nat @ From @ To )
     => ( ( ord_less_eq_nat @ To @ ( size_size_list_o @ Xs ) )
       => ( ( ord_less_nat @ I @ ( minus_minus_nat @ To @ From ) )
         => ( ( nth_o @ ( slice_o @ From @ To @ Xs ) @ I )
            = ( nth_o @ Xs @ ( plus_plus_nat @ From @ I ) ) ) ) ) ) ).

% slice_nth
thf(fact_3871_split__pos__lemma,axiom,
    ! [K: int,P: int > int > $o,N: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ( ( P @ ( divide_divide_int @ N @ K ) @ ( modulo_modulo_int @ N @ K ) )
        = ( ! [I2: int,J3: int] :
              ( ( ( ord_less_eq_int @ zero_zero_int @ J3 )
                & ( ord_less_int @ J3 @ K )
                & ( N
                  = ( plus_plus_int @ ( times_times_int @ K @ I2 ) @ J3 ) ) )
             => ( P @ I2 @ J3 ) ) ) ) ) ).

% split_pos_lemma
thf(fact_3872_split__neg__lemma,axiom,
    ! [K: int,P: int > int > $o,N: int] :
      ( ( ord_less_int @ K @ zero_zero_int )
     => ( ( P @ ( divide_divide_int @ N @ K ) @ ( modulo_modulo_int @ N @ K ) )
        = ( ! [I2: int,J3: int] :
              ( ( ( ord_less_int @ K @ J3 )
                & ( ord_less_eq_int @ J3 @ zero_zero_int )
                & ( N
                  = ( plus_plus_int @ ( times_times_int @ K @ I2 ) @ J3 ) ) )
             => ( P @ I2 @ J3 ) ) ) ) ) ).

% split_neg_lemma
thf(fact_3873_verit__le__mono__div__int,axiom,
    ! [A4: int,B4: int,N: int] :
      ( ( ord_less_int @ A4 @ B4 )
     => ( ( ord_less_int @ zero_zero_int @ N )
       => ( ord_less_eq_int
          @ ( plus_plus_int @ ( divide_divide_int @ A4 @ N )
            @ ( if_int
              @ ( ( modulo_modulo_int @ B4 @ N )
                = zero_zero_int )
              @ one_one_int
              @ zero_zero_int ) )
          @ ( divide_divide_int @ B4 @ N ) ) ) ) ).

% verit_le_mono_div_int
thf(fact_3874_verit__le__mono__div,axiom,
    ! [A4: nat,B4: nat,N: nat] :
      ( ( ord_less_nat @ A4 @ B4 )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_nat
          @ ( plus_plus_nat @ ( divide_divide_nat @ A4 @ N )
            @ ( if_nat
              @ ( ( modulo_modulo_nat @ B4 @ N )
                = zero_zero_nat )
              @ one_one_nat
              @ zero_zero_nat ) )
          @ ( divide_divide_nat @ B4 @ N ) ) ) ) ).

% verit_le_mono_div
thf(fact_3875_le__divide__eq__numeral_I2_J,axiom,
    ! [W2: num,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) @ C ) @ B ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ B @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) @ zero_zero_rat ) ) ) ) ) ) ).

% le_divide_eq_numeral(2)
thf(fact_3876_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numeral_numeral_int @ M )
        = ( numeral_numeral_int @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_3877_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numeral_numeral_nat @ M )
        = ( numeral_numeral_nat @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_3878_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numera6620942414471956472nteger @ M )
        = ( numera6620942414471956472nteger @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_3879_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numeral_numeral_rat @ M )
        = ( numeral_numeral_rat @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_3880_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numera5444537566228673987atural @ M )
        = ( numera5444537566228673987atural @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_3881_int__eq__iff__numeral,axiom,
    ! [M: nat,V: num] :
      ( ( ( semiri1314217659103216013at_int @ M )
        = ( numeral_numeral_int @ V ) )
      = ( M
        = ( numeral_numeral_nat @ V ) ) ) ).

% int_eq_iff_numeral
thf(fact_3882_nat__numeral,axiom,
    ! [K: num] :
      ( ( nat2 @ ( numeral_numeral_int @ K ) )
      = ( numeral_numeral_nat @ K ) ) ).

% nat_numeral
thf(fact_3883_numeral__le__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_le3102999989581377725nteger @ ( numera6620942414471956472nteger @ M ) @ ( numera6620942414471956472nteger @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% numeral_le_iff
thf(fact_3884_numeral__le__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_le1926595141338095240atural @ ( numera5444537566228673987atural @ M ) @ ( numera5444537566228673987atural @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% numeral_le_iff
thf(fact_3885_numeral__le__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_rat @ ( numeral_numeral_rat @ M ) @ ( numeral_numeral_rat @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% numeral_le_iff
thf(fact_3886_numeral__le__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% numeral_le_iff
thf(fact_3887_numeral__le__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% numeral_le_iff
thf(fact_3888_numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% numeral_less_iff
thf(fact_3889_numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% numeral_less_iff
thf(fact_3890_numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_le6747313008572928689nteger @ ( numera6620942414471956472nteger @ M ) @ ( numera6620942414471956472nteger @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% numeral_less_iff
thf(fact_3891_numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_rat @ ( numeral_numeral_rat @ M ) @ ( numeral_numeral_rat @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% numeral_less_iff
thf(fact_3892_numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_le5570908160329646204atural @ ( numera5444537566228673987atural @ M ) @ ( numera5444537566228673987atural @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% numeral_less_iff
thf(fact_3893_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( numeral_numeral_int @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_3894_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_3895_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ M ) @ ( numera6620942414471956472nteger @ N ) )
      = ( numera6620942414471956472nteger @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_3896_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_rat @ ( numeral_numeral_rat @ M ) @ ( numeral_numeral_rat @ N ) )
      = ( numeral_numeral_rat @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_3897_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_p4538020629002901425atural @ ( numera5444537566228673987atural @ M ) @ ( numera5444537566228673987atural @ N ) )
      = ( numera5444537566228673987atural @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_3898_add__numeral__left,axiom,
    ! [V: num,W2: num,Z2: int] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ V ) @ ( plus_plus_int @ ( numeral_numeral_int @ W2 ) @ Z2 ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ ( plus_plus_num @ V @ W2 ) ) @ Z2 ) ) ).

% add_numeral_left
thf(fact_3899_add__numeral__left,axiom,
    ! [V: num,W2: num,Z2: nat] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ V ) @ ( plus_plus_nat @ ( numeral_numeral_nat @ W2 ) @ Z2 ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ ( plus_plus_num @ V @ W2 ) ) @ Z2 ) ) ).

% add_numeral_left
thf(fact_3900_add__numeral__left,axiom,
    ! [V: num,W2: num,Z2: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ V ) @ ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ W2 ) @ Z2 ) )
      = ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ ( plus_plus_num @ V @ W2 ) ) @ Z2 ) ) ).

% add_numeral_left
thf(fact_3901_add__numeral__left,axiom,
    ! [V: num,W2: num,Z2: rat] :
      ( ( plus_plus_rat @ ( numeral_numeral_rat @ V ) @ ( plus_plus_rat @ ( numeral_numeral_rat @ W2 ) @ Z2 ) )
      = ( plus_plus_rat @ ( numeral_numeral_rat @ ( plus_plus_num @ V @ W2 ) ) @ Z2 ) ) ).

% add_numeral_left
thf(fact_3902_add__numeral__left,axiom,
    ! [V: num,W2: num,Z2: code_natural] :
      ( ( plus_p4538020629002901425atural @ ( numera5444537566228673987atural @ V ) @ ( plus_p4538020629002901425atural @ ( numera5444537566228673987atural @ W2 ) @ Z2 ) )
      = ( plus_p4538020629002901425atural @ ( numera5444537566228673987atural @ ( plus_plus_num @ V @ W2 ) ) @ Z2 ) ) ).

% add_numeral_left
thf(fact_3903_numeral__times__numeral,axiom,
    ! [M: num,N: num] :
      ( ( times_times_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( numeral_numeral_int @ ( times_times_num @ M @ N ) ) ) ).

% numeral_times_numeral
thf(fact_3904_numeral__times__numeral,axiom,
    ! [M: num,N: num] :
      ( ( times_times_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_nat @ ( times_times_num @ M @ N ) ) ) ).

% numeral_times_numeral
thf(fact_3905_numeral__times__numeral,axiom,
    ! [M: num,N: num] :
      ( ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ M ) @ ( numera6620942414471956472nteger @ N ) )
      = ( numera6620942414471956472nteger @ ( times_times_num @ M @ N ) ) ) ).

% numeral_times_numeral
thf(fact_3906_numeral__times__numeral,axiom,
    ! [M: num,N: num] :
      ( ( times_times_rat @ ( numeral_numeral_rat @ M ) @ ( numeral_numeral_rat @ N ) )
      = ( numeral_numeral_rat @ ( times_times_num @ M @ N ) ) ) ).

% numeral_times_numeral
thf(fact_3907_numeral__times__numeral,axiom,
    ! [M: num,N: num] :
      ( ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ M ) @ ( numera5444537566228673987atural @ N ) )
      = ( numera5444537566228673987atural @ ( times_times_num @ M @ N ) ) ) ).

% numeral_times_numeral
thf(fact_3908_mult__numeral__left__semiring__numeral,axiom,
    ! [V: num,W2: num,Z2: int] :
      ( ( times_times_int @ ( numeral_numeral_int @ V ) @ ( times_times_int @ ( numeral_numeral_int @ W2 ) @ Z2 ) )
      = ( times_times_int @ ( numeral_numeral_int @ ( times_times_num @ V @ W2 ) ) @ Z2 ) ) ).

% mult_numeral_left_semiring_numeral
thf(fact_3909_mult__numeral__left__semiring__numeral,axiom,
    ! [V: num,W2: num,Z2: nat] :
      ( ( times_times_nat @ ( numeral_numeral_nat @ V ) @ ( times_times_nat @ ( numeral_numeral_nat @ W2 ) @ Z2 ) )
      = ( times_times_nat @ ( numeral_numeral_nat @ ( times_times_num @ V @ W2 ) ) @ Z2 ) ) ).

% mult_numeral_left_semiring_numeral
thf(fact_3910_mult__numeral__left__semiring__numeral,axiom,
    ! [V: num,W2: num,Z2: code_integer] :
      ( ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ V ) @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ W2 ) @ Z2 ) )
      = ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( times_times_num @ V @ W2 ) ) @ Z2 ) ) ).

% mult_numeral_left_semiring_numeral
thf(fact_3911_mult__numeral__left__semiring__numeral,axiom,
    ! [V: num,W2: num,Z2: rat] :
      ( ( times_times_rat @ ( numeral_numeral_rat @ V ) @ ( times_times_rat @ ( numeral_numeral_rat @ W2 ) @ Z2 ) )
      = ( times_times_rat @ ( numeral_numeral_rat @ ( times_times_num @ V @ W2 ) ) @ Z2 ) ) ).

% mult_numeral_left_semiring_numeral
thf(fact_3912_mult__numeral__left__semiring__numeral,axiom,
    ! [V: num,W2: num,Z2: code_natural] :
      ( ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ V ) @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ W2 ) @ Z2 ) )
      = ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ ( times_times_num @ V @ W2 ) ) @ Z2 ) ) ).

% mult_numeral_left_semiring_numeral
thf(fact_3913_neg__numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( uminus_uminus_int @ ( numeral_numeral_int @ M ) )
        = ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( M = N ) ) ).

% neg_numeral_eq_iff
thf(fact_3914_neg__numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) )
        = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) )
      = ( M = N ) ) ).

% neg_numeral_eq_iff
thf(fact_3915_neg__numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) )
        = ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) )
      = ( M = N ) ) ).

% neg_numeral_eq_iff
thf(fact_3916_power__zero__numeral,axiom,
    ! [K: num] :
      ( ( power_8256067586552552935nteger @ zero_z3403309356797280102nteger @ ( numeral_numeral_nat @ K ) )
      = zero_z3403309356797280102nteger ) ).

% power_zero_numeral
thf(fact_3917_power__zero__numeral,axiom,
    ! [K: num] :
      ( ( power_power_rat @ zero_zero_rat @ ( numeral_numeral_nat @ K ) )
      = zero_zero_rat ) ).

% power_zero_numeral
thf(fact_3918_power__zero__numeral,axiom,
    ! [K: num] :
      ( ( power_7079662738309270450atural @ zero_z2226904508553997617atural @ ( numeral_numeral_nat @ K ) )
      = zero_z2226904508553997617atural ) ).

% power_zero_numeral
thf(fact_3919_power__zero__numeral,axiom,
    ! [K: num] :
      ( ( power_power_int @ zero_zero_int @ ( numeral_numeral_nat @ K ) )
      = zero_zero_int ) ).

% power_zero_numeral
thf(fact_3920_power__zero__numeral,axiom,
    ! [K: num] :
      ( ( power_power_nat @ zero_zero_nat @ ( numeral_numeral_nat @ K ) )
      = zero_zero_nat ) ).

% power_zero_numeral
thf(fact_3921_mod__self,axiom,
    ! [A: int] :
      ( ( modulo_modulo_int @ A @ A )
      = zero_zero_int ) ).

% mod_self
thf(fact_3922_mod__self,axiom,
    ! [A: nat] :
      ( ( modulo_modulo_nat @ A @ A )
      = zero_zero_nat ) ).

% mod_self
thf(fact_3923_mod__self,axiom,
    ! [A: code_integer] :
      ( ( modulo364778990260209775nteger @ A @ A )
      = zero_z3403309356797280102nteger ) ).

% mod_self
thf(fact_3924_mod__self,axiom,
    ! [A: code_natural] :
      ( ( modulo8411746178871703098atural @ A @ A )
      = zero_z2226904508553997617atural ) ).

% mod_self
thf(fact_3925_mod__by__0,axiom,
    ! [A: int] :
      ( ( modulo_modulo_int @ A @ zero_zero_int )
      = A ) ).

% mod_by_0
thf(fact_3926_mod__by__0,axiom,
    ! [A: nat] :
      ( ( modulo_modulo_nat @ A @ zero_zero_nat )
      = A ) ).

% mod_by_0
thf(fact_3927_mod__by__0,axiom,
    ! [A: code_integer] :
      ( ( modulo364778990260209775nteger @ A @ zero_z3403309356797280102nteger )
      = A ) ).

% mod_by_0
thf(fact_3928_mod__by__0,axiom,
    ! [A: code_natural] :
      ( ( modulo8411746178871703098atural @ A @ zero_z2226904508553997617atural )
      = A ) ).

% mod_by_0
thf(fact_3929_mod__0,axiom,
    ! [A: int] :
      ( ( modulo_modulo_int @ zero_zero_int @ A )
      = zero_zero_int ) ).

% mod_0
thf(fact_3930_mod__0,axiom,
    ! [A: nat] :
      ( ( modulo_modulo_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% mod_0
thf(fact_3931_mod__0,axiom,
    ! [A: code_integer] :
      ( ( modulo364778990260209775nteger @ zero_z3403309356797280102nteger @ A )
      = zero_z3403309356797280102nteger ) ).

% mod_0
thf(fact_3932_mod__0,axiom,
    ! [A: code_natural] :
      ( ( modulo8411746178871703098atural @ zero_z2226904508553997617atural @ A )
      = zero_z2226904508553997617atural ) ).

% mod_0
thf(fact_3933_bits__mod__0,axiom,
    ! [A: int] :
      ( ( modulo_modulo_int @ zero_zero_int @ A )
      = zero_zero_int ) ).

% bits_mod_0
thf(fact_3934_bits__mod__0,axiom,
    ! [A: nat] :
      ( ( modulo_modulo_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% bits_mod_0
thf(fact_3935_bits__mod__0,axiom,
    ! [A: code_integer] :
      ( ( modulo364778990260209775nteger @ zero_z3403309356797280102nteger @ A )
      = zero_z3403309356797280102nteger ) ).

% bits_mod_0
thf(fact_3936_bits__mod__0,axiom,
    ! [A: code_natural] :
      ( ( modulo8411746178871703098atural @ zero_z2226904508553997617atural @ A )
      = zero_z2226904508553997617atural ) ).

% bits_mod_0
thf(fact_3937_power__add__numeral,axiom,
    ! [A: code_integer,M: num,N: num] :
      ( ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ M ) ) @ ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ N ) ) )
      = ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ) ).

% power_add_numeral
thf(fact_3938_power__add__numeral,axiom,
    ! [A: rat,M: num,N: num] :
      ( ( times_times_rat @ ( power_power_rat @ A @ ( numeral_numeral_nat @ M ) ) @ ( power_power_rat @ A @ ( numeral_numeral_nat @ N ) ) )
      = ( power_power_rat @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ) ).

% power_add_numeral
thf(fact_3939_power__add__numeral,axiom,
    ! [A: nat,M: num,N: num] :
      ( ( times_times_nat @ ( power_power_nat @ A @ ( numeral_numeral_nat @ M ) ) @ ( power_power_nat @ A @ ( numeral_numeral_nat @ N ) ) )
      = ( power_power_nat @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ) ).

% power_add_numeral
thf(fact_3940_power__add__numeral,axiom,
    ! [A: int,M: num,N: num] :
      ( ( times_times_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ M ) ) @ ( power_power_int @ A @ ( numeral_numeral_nat @ N ) ) )
      = ( power_power_int @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ) ).

% power_add_numeral
thf(fact_3941_power__add__numeral2,axiom,
    ! [A: code_integer,M: num,N: num,B: code_integer] :
      ( ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ M ) ) @ ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ N ) ) @ B ) )
      = ( times_3573771949741848930nteger @ ( power_8256067586552552935nteger @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) @ B ) ) ).

% power_add_numeral2
thf(fact_3942_power__add__numeral2,axiom,
    ! [A: rat,M: num,N: num,B: rat] :
      ( ( times_times_rat @ ( power_power_rat @ A @ ( numeral_numeral_nat @ M ) ) @ ( times_times_rat @ ( power_power_rat @ A @ ( numeral_numeral_nat @ N ) ) @ B ) )
      = ( times_times_rat @ ( power_power_rat @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) @ B ) ) ).

% power_add_numeral2
thf(fact_3943_power__add__numeral2,axiom,
    ! [A: nat,M: num,N: num,B: nat] :
      ( ( times_times_nat @ ( power_power_nat @ A @ ( numeral_numeral_nat @ M ) ) @ ( times_times_nat @ ( power_power_nat @ A @ ( numeral_numeral_nat @ N ) ) @ B ) )
      = ( times_times_nat @ ( power_power_nat @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) @ B ) ) ).

% power_add_numeral2
thf(fact_3944_power__add__numeral2,axiom,
    ! [A: int,M: num,N: num,B: int] :
      ( ( times_times_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ M ) ) @ ( times_times_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ N ) ) @ B ) )
      = ( times_times_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) @ B ) ) ).

% power_add_numeral2
thf(fact_3945_of__nat__numeral,axiom,
    ! [N: num] :
      ( ( semiri1314217659103216013at_int @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_int @ N ) ) ).

% of_nat_numeral
thf(fact_3946_of__nat__numeral,axiom,
    ! [N: num] :
      ( ( semiri1316708129612266289at_nat @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_nat @ N ) ) ).

% of_nat_numeral
thf(fact_3947_of__nat__numeral,axiom,
    ! [N: num] :
      ( ( semiri4939895301339042750nteger @ ( numeral_numeral_nat @ N ) )
      = ( numera6620942414471956472nteger @ N ) ) ).

% of_nat_numeral
thf(fact_3948_of__nat__numeral,axiom,
    ! [N: num] :
      ( ( semiri681578069525770553at_rat @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_rat @ N ) ) ).

% of_nat_numeral
thf(fact_3949_of__nat__numeral,axiom,
    ! [N: num] :
      ( ( semiri3763490453095760265atural @ ( numeral_numeral_nat @ N ) )
      = ( numera5444537566228673987atural @ N ) ) ).

% of_nat_numeral
thf(fact_3950_mod__add__self1,axiom,
    ! [B: int,A: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ B @ A ) @ B )
      = ( modulo_modulo_int @ A @ B ) ) ).

% mod_add_self1
thf(fact_3951_mod__add__self1,axiom,
    ! [B: nat,A: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ B @ A ) @ B )
      = ( modulo_modulo_nat @ A @ B ) ) ).

% mod_add_self1
thf(fact_3952_mod__add__self1,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ B @ A ) @ B )
      = ( modulo364778990260209775nteger @ A @ B ) ) ).

% mod_add_self1
thf(fact_3953_mod__add__self1,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( modulo8411746178871703098atural @ ( plus_p4538020629002901425atural @ B @ A ) @ B )
      = ( modulo8411746178871703098atural @ A @ B ) ) ).

% mod_add_self1
thf(fact_3954_mod__add__self2,axiom,
    ! [A: int,B: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ A @ B ) @ B )
      = ( modulo_modulo_int @ A @ B ) ) ).

% mod_add_self2
thf(fact_3955_mod__add__self2,axiom,
    ! [A: nat,B: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = ( modulo_modulo_nat @ A @ B ) ) ).

% mod_add_self2
thf(fact_3956_mod__add__self2,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ B )
      = ( modulo364778990260209775nteger @ A @ B ) ) ).

% mod_add_self2
thf(fact_3957_mod__add__self2,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( modulo8411746178871703098atural @ ( plus_p4538020629002901425atural @ A @ B ) @ B )
      = ( modulo8411746178871703098atural @ A @ B ) ) ).

% mod_add_self2
thf(fact_3958_abs__numeral,axiom,
    ! [N: num] :
      ( ( abs_abs_int @ ( numeral_numeral_int @ N ) )
      = ( numeral_numeral_int @ N ) ) ).

% abs_numeral
thf(fact_3959_abs__numeral,axiom,
    ! [N: num] :
      ( ( abs_abs_Code_integer @ ( numera6620942414471956472nteger @ N ) )
      = ( numera6620942414471956472nteger @ N ) ) ).

% abs_numeral
thf(fact_3960_abs__numeral,axiom,
    ! [N: num] :
      ( ( abs_abs_rat @ ( numeral_numeral_rat @ N ) )
      = ( numeral_numeral_rat @ N ) ) ).

% abs_numeral
thf(fact_3961_of__int__eq__numeral__iff,axiom,
    ! [Z2: int,N: num] :
      ( ( ( ring_1_of_int_int @ Z2 )
        = ( numeral_numeral_int @ N ) )
      = ( Z2
        = ( numeral_numeral_int @ N ) ) ) ).

% of_int_eq_numeral_iff
thf(fact_3962_of__int__eq__numeral__iff,axiom,
    ! [Z2: int,N: num] :
      ( ( ( ring_18347121197199848620nteger @ Z2 )
        = ( numera6620942414471956472nteger @ N ) )
      = ( Z2
        = ( numeral_numeral_int @ N ) ) ) ).

% of_int_eq_numeral_iff
thf(fact_3963_of__int__eq__numeral__iff,axiom,
    ! [Z2: int,N: num] :
      ( ( ( ring_1_of_int_rat @ Z2 )
        = ( numeral_numeral_rat @ N ) )
      = ( Z2
        = ( numeral_numeral_int @ N ) ) ) ).

% of_int_eq_numeral_iff
thf(fact_3964_of__int__numeral,axiom,
    ! [K: num] :
      ( ( ring_1_of_int_int @ ( numeral_numeral_int @ K ) )
      = ( numeral_numeral_int @ K ) ) ).

% of_int_numeral
thf(fact_3965_of__int__numeral,axiom,
    ! [K: num] :
      ( ( ring_18347121197199848620nteger @ ( numeral_numeral_int @ K ) )
      = ( numera6620942414471956472nteger @ K ) ) ).

% of_int_numeral
thf(fact_3966_of__int__numeral,axiom,
    ! [K: num] :
      ( ( ring_1_of_int_rat @ ( numeral_numeral_int @ K ) )
      = ( numeral_numeral_rat @ K ) ) ).

% of_int_numeral
thf(fact_3967_power__int__add__numeral,axiom,
    ! [X2: rat,M: num,N: num] :
      ( ( times_times_rat @ ( power_int_rat @ X2 @ ( numeral_numeral_int @ M ) ) @ ( power_int_rat @ X2 @ ( numeral_numeral_int @ N ) ) )
      = ( power_int_rat @ X2 @ ( numeral_numeral_int @ ( plus_plus_num @ M @ N ) ) ) ) ).

% power_int_add_numeral
thf(fact_3968_power__int__add__numeral2,axiom,
    ! [X2: rat,M: num,N: num,B: rat] :
      ( ( times_times_rat @ ( power_int_rat @ X2 @ ( numeral_numeral_int @ M ) ) @ ( times_times_rat @ ( power_int_rat @ X2 @ ( numeral_numeral_int @ N ) ) @ B ) )
      = ( times_times_rat @ ( power_int_rat @ X2 @ ( numeral_numeral_int @ ( plus_plus_num @ M @ N ) ) ) @ B ) ) ).

% power_int_add_numeral2
thf(fact_3969_floor__numeral,axiom,
    ! [V: num] :
      ( ( archim3151403230148437115or_rat @ ( numeral_numeral_rat @ V ) )
      = ( numeral_numeral_int @ V ) ) ).

% floor_numeral
thf(fact_3970_ceiling__numeral,axiom,
    ! [V: num] :
      ( ( archim2889992004027027881ng_rat @ ( numeral_numeral_rat @ V ) )
      = ( numeral_numeral_int @ V ) ) ).

% ceiling_numeral
thf(fact_3971_distrib__right__numeral,axiom,
    ! [A: int,B: int,V: num] :
      ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ ( numeral_numeral_int @ V ) )
      = ( plus_plus_int @ ( times_times_int @ A @ ( numeral_numeral_int @ V ) ) @ ( times_times_int @ B @ ( numeral_numeral_int @ V ) ) ) ) ).

% distrib_right_numeral
thf(fact_3972_distrib__right__numeral,axiom,
    ! [A: nat,B: nat,V: num] :
      ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ ( numeral_numeral_nat @ V ) )
      = ( plus_plus_nat @ ( times_times_nat @ A @ ( numeral_numeral_nat @ V ) ) @ ( times_times_nat @ B @ ( numeral_numeral_nat @ V ) ) ) ) ).

% distrib_right_numeral
thf(fact_3973_distrib__right__numeral,axiom,
    ! [A: code_integer,B: code_integer,V: num] :
      ( ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ ( numera6620942414471956472nteger @ V ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ ( numera6620942414471956472nteger @ V ) ) @ ( times_3573771949741848930nteger @ B @ ( numera6620942414471956472nteger @ V ) ) ) ) ).

% distrib_right_numeral
thf(fact_3974_distrib__right__numeral,axiom,
    ! [A: rat,B: rat,V: num] :
      ( ( times_times_rat @ ( plus_plus_rat @ A @ B ) @ ( numeral_numeral_rat @ V ) )
      = ( plus_plus_rat @ ( times_times_rat @ A @ ( numeral_numeral_rat @ V ) ) @ ( times_times_rat @ B @ ( numeral_numeral_rat @ V ) ) ) ) ).

% distrib_right_numeral
thf(fact_3975_distrib__right__numeral,axiom,
    ! [A: code_natural,B: code_natural,V: num] :
      ( ( times_2397367101498566445atural @ ( plus_p4538020629002901425atural @ A @ B ) @ ( numera5444537566228673987atural @ V ) )
      = ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ A @ ( numera5444537566228673987atural @ V ) ) @ ( times_2397367101498566445atural @ B @ ( numera5444537566228673987atural @ V ) ) ) ) ).

% distrib_right_numeral
thf(fact_3976_distrib__left__numeral,axiom,
    ! [V: num,B: int,C: int] :
      ( ( times_times_int @ ( numeral_numeral_int @ V ) @ ( plus_plus_int @ B @ C ) )
      = ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ V ) @ B ) @ ( times_times_int @ ( numeral_numeral_int @ V ) @ C ) ) ) ).

% distrib_left_numeral
thf(fact_3977_distrib__left__numeral,axiom,
    ! [V: num,B: nat,C: nat] :
      ( ( times_times_nat @ ( numeral_numeral_nat @ V ) @ ( plus_plus_nat @ B @ C ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ V ) @ B ) @ ( times_times_nat @ ( numeral_numeral_nat @ V ) @ C ) ) ) ).

% distrib_left_numeral
thf(fact_3978_distrib__left__numeral,axiom,
    ! [V: num,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ V ) @ ( plus_p5714425477246183910nteger @ B @ C ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ V ) @ B ) @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ V ) @ C ) ) ) ).

% distrib_left_numeral
thf(fact_3979_distrib__left__numeral,axiom,
    ! [V: num,B: rat,C: rat] :
      ( ( times_times_rat @ ( numeral_numeral_rat @ V ) @ ( plus_plus_rat @ B @ C ) )
      = ( plus_plus_rat @ ( times_times_rat @ ( numeral_numeral_rat @ V ) @ B ) @ ( times_times_rat @ ( numeral_numeral_rat @ V ) @ C ) ) ) ).

% distrib_left_numeral
thf(fact_3980_distrib__left__numeral,axiom,
    ! [V: num,B: code_natural,C: code_natural] :
      ( ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ V ) @ ( plus_p4538020629002901425atural @ B @ C ) )
      = ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ V ) @ B ) @ ( times_2397367101498566445atural @ ( numera5444537566228673987atural @ V ) @ C ) ) ) ).

% distrib_left_numeral
thf(fact_3981_neg__numeral__le__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) )
      = ( ord_less_eq_num @ N @ M ) ) ).

% neg_numeral_le_iff
thf(fact_3982_neg__numeral__le__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) )
      = ( ord_less_eq_num @ N @ M ) ) ).

% neg_numeral_le_iff
thf(fact_3983_neg__numeral__le__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( ord_less_eq_num @ N @ M ) ) ).

% neg_numeral_le_iff
thf(fact_3984_left__diff__distrib__numeral,axiom,
    ! [A: int,B: int,V: num] :
      ( ( times_times_int @ ( minus_minus_int @ A @ B ) @ ( numeral_numeral_int @ V ) )
      = ( minus_minus_int @ ( times_times_int @ A @ ( numeral_numeral_int @ V ) ) @ ( times_times_int @ B @ ( numeral_numeral_int @ V ) ) ) ) ).

% left_diff_distrib_numeral
thf(fact_3985_left__diff__distrib__numeral,axiom,
    ! [A: code_integer,B: code_integer,V: num] :
      ( ( times_3573771949741848930nteger @ ( minus_8373710615458151222nteger @ A @ B ) @ ( numera6620942414471956472nteger @ V ) )
      = ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ A @ ( numera6620942414471956472nteger @ V ) ) @ ( times_3573771949741848930nteger @ B @ ( numera6620942414471956472nteger @ V ) ) ) ) ).

% left_diff_distrib_numeral
thf(fact_3986_left__diff__distrib__numeral,axiom,
    ! [A: rat,B: rat,V: num] :
      ( ( times_times_rat @ ( minus_minus_rat @ A @ B ) @ ( numeral_numeral_rat @ V ) )
      = ( minus_minus_rat @ ( times_times_rat @ A @ ( numeral_numeral_rat @ V ) ) @ ( times_times_rat @ B @ ( numeral_numeral_rat @ V ) ) ) ) ).

% left_diff_distrib_numeral
thf(fact_3987_right__diff__distrib__numeral,axiom,
    ! [V: num,B: int,C: int] :
      ( ( times_times_int @ ( numeral_numeral_int @ V ) @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( times_times_int @ ( numeral_numeral_int @ V ) @ B ) @ ( times_times_int @ ( numeral_numeral_int @ V ) @ C ) ) ) ).

% right_diff_distrib_numeral
thf(fact_3988_right__diff__distrib__numeral,axiom,
    ! [V: num,B: code_integer,C: code_integer] :
      ( ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ V ) @ ( minus_8373710615458151222nteger @ B @ C ) )
      = ( minus_8373710615458151222nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ V ) @ B ) @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ V ) @ C ) ) ) ).

% right_diff_distrib_numeral
thf(fact_3989_right__diff__distrib__numeral,axiom,
    ! [V: num,B: rat,C: rat] :
      ( ( times_times_rat @ ( numeral_numeral_rat @ V ) @ ( minus_minus_rat @ B @ C ) )
      = ( minus_minus_rat @ ( times_times_rat @ ( numeral_numeral_rat @ V ) @ B ) @ ( times_times_rat @ ( numeral_numeral_rat @ V ) @ C ) ) ) ).

% right_diff_distrib_numeral
thf(fact_3990_neg__numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( ord_less_num @ N @ M ) ) ).

% neg_numeral_less_iff
thf(fact_3991_neg__numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) )
      = ( ord_less_num @ N @ M ) ) ).

% neg_numeral_less_iff
thf(fact_3992_neg__numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) )
      = ( ord_less_num @ N @ M ) ) ).

% neg_numeral_less_iff
thf(fact_3993_semiring__norm_I168_J,axiom,
    ! [V: num,W2: num,Y: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) @ ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ W2 ) ) @ Y ) )
      = ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( plus_plus_num @ V @ W2 ) ) ) @ Y ) ) ).

% semiring_norm(168)
thf(fact_3994_semiring__norm_I168_J,axiom,
    ! [V: num,W2: num,Y: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ V ) ) @ ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ W2 ) ) @ Y ) )
      = ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( plus_plus_num @ V @ W2 ) ) ) @ Y ) ) ).

% semiring_norm(168)
thf(fact_3995_semiring__norm_I168_J,axiom,
    ! [V: num,W2: num,Y: rat] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) @ ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) @ Y ) )
      = ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( plus_plus_num @ V @ W2 ) ) ) @ Y ) ) ).

% semiring_norm(168)
thf(fact_3996_add__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( uminus_uminus_int @ ( plus_plus_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) ) ) ) ).

% add_neg_numeral_simps(3)
thf(fact_3997_add__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) )
      = ( uminus1351360451143612070nteger @ ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ M ) @ ( numera6620942414471956472nteger @ N ) ) ) ) ).

% add_neg_numeral_simps(3)
thf(fact_3998_add__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) )
      = ( uminus_uminus_rat @ ( plus_plus_rat @ ( numeral_numeral_rat @ M ) @ ( numeral_numeral_rat @ N ) ) ) ) ).

% add_neg_numeral_simps(3)
thf(fact_3999_mult__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(3)
thf(fact_4000_mult__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ M ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) )
      = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(3)
thf(fact_4001_mult__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_rat @ ( numeral_numeral_rat @ M ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) )
      = ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(3)
thf(fact_4002_mult__neg__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(2)
thf(fact_4003_mult__neg__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( times_3573771949741848930nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( numera6620942414471956472nteger @ N ) )
      = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(2)
thf(fact_4004_mult__neg__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( numeral_numeral_rat @ N ) )
      = ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(2)
thf(fact_4005_mult__neg__numeral__simps_I1_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( numeral_numeral_int @ ( times_times_num @ M @ N ) ) ) ).

% mult_neg_numeral_simps(1)
thf(fact_4006_mult__neg__numeral__simps_I1_J,axiom,
    ! [M: num,N: num] :
      ( ( times_3573771949741848930nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) )
      = ( numera6620942414471956472nteger @ ( times_times_num @ M @ N ) ) ) ).

% mult_neg_numeral_simps(1)
thf(fact_4007_mult__neg__numeral__simps_I1_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) )
      = ( numeral_numeral_rat @ ( times_times_num @ M @ N ) ) ) ).

% mult_neg_numeral_simps(1)
thf(fact_4008_diff__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_minus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( plus_plus_num @ M @ N ) ) ) ) ).

% diff_numeral_simps(3)
thf(fact_4009_diff__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( numera6620942414471956472nteger @ N ) )
      = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( plus_plus_num @ M @ N ) ) ) ) ).

% diff_numeral_simps(3)
thf(fact_4010_diff__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_minus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( numeral_numeral_rat @ N ) )
      = ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( plus_plus_num @ M @ N ) ) ) ) ).

% diff_numeral_simps(3)
thf(fact_4011_diff__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_minus_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( numeral_numeral_int @ ( plus_plus_num @ M @ N ) ) ) ).

% diff_numeral_simps(2)
thf(fact_4012_diff__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_8373710615458151222nteger @ ( numera6620942414471956472nteger @ M ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) )
      = ( numera6620942414471956472nteger @ ( plus_plus_num @ M @ N ) ) ) ).

% diff_numeral_simps(2)
thf(fact_4013_diff__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_minus_rat @ ( numeral_numeral_rat @ M ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) )
      = ( numeral_numeral_rat @ ( plus_plus_num @ M @ N ) ) ) ).

% diff_numeral_simps(2)
thf(fact_4014_mod__mult__self2__is__0,axiom,
    ! [A: int,B: int] :
      ( ( modulo_modulo_int @ ( times_times_int @ A @ B ) @ B )
      = zero_zero_int ) ).

% mod_mult_self2_is_0
thf(fact_4015_mod__mult__self2__is__0,axiom,
    ! [A: nat,B: nat] :
      ( ( modulo_modulo_nat @ ( times_times_nat @ A @ B ) @ B )
      = zero_zero_nat ) ).

% mod_mult_self2_is_0
thf(fact_4016_mod__mult__self2__is__0,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( modulo364778990260209775nteger @ ( times_3573771949741848930nteger @ A @ B ) @ B )
      = zero_z3403309356797280102nteger ) ).

% mod_mult_self2_is_0
thf(fact_4017_mod__mult__self2__is__0,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( modulo8411746178871703098atural @ ( times_2397367101498566445atural @ A @ B ) @ B )
      = zero_z2226904508553997617atural ) ).

% mod_mult_self2_is_0
thf(fact_4018_mod__mult__self1__is__0,axiom,
    ! [B: int,A: int] :
      ( ( modulo_modulo_int @ ( times_times_int @ B @ A ) @ B )
      = zero_zero_int ) ).

% mod_mult_self1_is_0
thf(fact_4019_mod__mult__self1__is__0,axiom,
    ! [B: nat,A: nat] :
      ( ( modulo_modulo_nat @ ( times_times_nat @ B @ A ) @ B )
      = zero_zero_nat ) ).

% mod_mult_self1_is_0
thf(fact_4020_mod__mult__self1__is__0,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( modulo364778990260209775nteger @ ( times_3573771949741848930nteger @ B @ A ) @ B )
      = zero_z3403309356797280102nteger ) ).

% mod_mult_self1_is_0
thf(fact_4021_mod__mult__self1__is__0,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( modulo8411746178871703098atural @ ( times_2397367101498566445atural @ B @ A ) @ B )
      = zero_z2226904508553997617atural ) ).

% mod_mult_self1_is_0
thf(fact_4022_mod__by__1,axiom,
    ! [A: int] :
      ( ( modulo_modulo_int @ A @ one_one_int )
      = zero_zero_int ) ).

% mod_by_1
thf(fact_4023_mod__by__1,axiom,
    ! [A: nat] :
      ( ( modulo_modulo_nat @ A @ one_one_nat )
      = zero_zero_nat ) ).

% mod_by_1
thf(fact_4024_mod__by__1,axiom,
    ! [A: code_integer] :
      ( ( modulo364778990260209775nteger @ A @ one_one_Code_integer )
      = zero_z3403309356797280102nteger ) ).

% mod_by_1
thf(fact_4025_mod__by__1,axiom,
    ! [A: code_natural] :
      ( ( modulo8411746178871703098atural @ A @ one_one_Code_natural )
      = zero_z2226904508553997617atural ) ).

% mod_by_1
thf(fact_4026_bits__mod__by__1,axiom,
    ! [A: int] :
      ( ( modulo_modulo_int @ A @ one_one_int )
      = zero_zero_int ) ).

% bits_mod_by_1
thf(fact_4027_bits__mod__by__1,axiom,
    ! [A: nat] :
      ( ( modulo_modulo_nat @ A @ one_one_nat )
      = zero_zero_nat ) ).

% bits_mod_by_1
thf(fact_4028_bits__mod__by__1,axiom,
    ! [A: code_integer] :
      ( ( modulo364778990260209775nteger @ A @ one_one_Code_integer )
      = zero_z3403309356797280102nteger ) ).

% bits_mod_by_1
thf(fact_4029_bits__mod__by__1,axiom,
    ! [A: code_natural] :
      ( ( modulo8411746178871703098atural @ A @ one_one_Code_natural )
      = zero_z2226904508553997617atural ) ).

% bits_mod_by_1
thf(fact_4030_mod__mult__self1,axiom,
    ! [A: int,C: int,B: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ A @ ( times_times_int @ C @ B ) ) @ B )
      = ( modulo_modulo_int @ A @ B ) ) ).

% mod_mult_self1
thf(fact_4031_mod__mult__self1,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ A @ ( times_times_nat @ C @ B ) ) @ B )
      = ( modulo_modulo_nat @ A @ B ) ) ).

% mod_mult_self1
thf(fact_4032_mod__mult__self1,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ ( times_3573771949741848930nteger @ C @ B ) ) @ B )
      = ( modulo364778990260209775nteger @ A @ B ) ) ).

% mod_mult_self1
thf(fact_4033_mod__mult__self1,axiom,
    ! [A: code_natural,C: code_natural,B: code_natural] :
      ( ( modulo8411746178871703098atural @ ( plus_p4538020629002901425atural @ A @ ( times_2397367101498566445atural @ C @ B ) ) @ B )
      = ( modulo8411746178871703098atural @ A @ B ) ) ).

% mod_mult_self1
thf(fact_4034_mod__mult__self2,axiom,
    ! [A: int,B: int,C: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ A @ ( times_times_int @ B @ C ) ) @ B )
      = ( modulo_modulo_int @ A @ B ) ) ).

% mod_mult_self2
thf(fact_4035_mod__mult__self2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ A @ ( times_times_nat @ B @ C ) ) @ B )
      = ( modulo_modulo_nat @ A @ B ) ) ).

% mod_mult_self2
thf(fact_4036_mod__mult__self2,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) ) @ B )
      = ( modulo364778990260209775nteger @ A @ B ) ) ).

% mod_mult_self2
thf(fact_4037_mod__mult__self2,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( modulo8411746178871703098atural @ ( plus_p4538020629002901425atural @ A @ ( times_2397367101498566445atural @ B @ C ) ) @ B )
      = ( modulo8411746178871703098atural @ A @ B ) ) ).

% mod_mult_self2
thf(fact_4038_mod__mult__self3,axiom,
    ! [C: int,B: int,A: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ ( times_times_int @ C @ B ) @ A ) @ B )
      = ( modulo_modulo_int @ A @ B ) ) ).

% mod_mult_self3
thf(fact_4039_mod__mult__self3,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ ( times_times_nat @ C @ B ) @ A ) @ B )
      = ( modulo_modulo_nat @ A @ B ) ) ).

% mod_mult_self3
thf(fact_4040_mod__mult__self3,axiom,
    ! [C: code_integer,B: code_integer,A: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ C @ B ) @ A ) @ B )
      = ( modulo364778990260209775nteger @ A @ B ) ) ).

% mod_mult_self3
thf(fact_4041_mod__mult__self3,axiom,
    ! [C: code_natural,B: code_natural,A: code_natural] :
      ( ( modulo8411746178871703098atural @ ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ C @ B ) @ A ) @ B )
      = ( modulo8411746178871703098atural @ A @ B ) ) ).

% mod_mult_self3
thf(fact_4042_mod__mult__self4,axiom,
    ! [B: int,C: int,A: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ ( times_times_int @ B @ C ) @ A ) @ B )
      = ( modulo_modulo_int @ A @ B ) ) ).

% mod_mult_self4
thf(fact_4043_mod__mult__self4,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ ( times_times_nat @ B @ C ) @ A ) @ B )
      = ( modulo_modulo_nat @ A @ B ) ) ).

% mod_mult_self4
thf(fact_4044_mod__mult__self4,axiom,
    ! [B: code_integer,C: code_integer,A: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ C ) @ A ) @ B )
      = ( modulo364778990260209775nteger @ A @ B ) ) ).

% mod_mult_self4
thf(fact_4045_mod__mult__self4,axiom,
    ! [B: code_natural,C: code_natural,A: code_natural] :
      ( ( modulo8411746178871703098atural @ ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ B @ C ) @ A ) @ B )
      = ( modulo8411746178871703098atural @ A @ B ) ) ).

% mod_mult_self4
thf(fact_4046_mod__div__trivial,axiom,
    ! [A: int,B: int] :
      ( ( divide_divide_int @ ( modulo_modulo_int @ A @ B ) @ B )
      = zero_zero_int ) ).

% mod_div_trivial
thf(fact_4047_mod__div__trivial,axiom,
    ! [A: nat,B: nat] :
      ( ( divide_divide_nat @ ( modulo_modulo_nat @ A @ B ) @ B )
      = zero_zero_nat ) ).

% mod_div_trivial
thf(fact_4048_mod__div__trivial,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( divide6298287555418463151nteger @ ( modulo364778990260209775nteger @ A @ B ) @ B )
      = zero_z3403309356797280102nteger ) ).

% mod_div_trivial
thf(fact_4049_mod__div__trivial,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( divide5121882707175180666atural @ ( modulo8411746178871703098atural @ A @ B ) @ B )
      = zero_z2226904508553997617atural ) ).

% mod_div_trivial
thf(fact_4050_bits__mod__div__trivial,axiom,
    ! [A: int,B: int] :
      ( ( divide_divide_int @ ( modulo_modulo_int @ A @ B ) @ B )
      = zero_zero_int ) ).

% bits_mod_div_trivial
thf(fact_4051_bits__mod__div__trivial,axiom,
    ! [A: nat,B: nat] :
      ( ( divide_divide_nat @ ( modulo_modulo_nat @ A @ B ) @ B )
      = zero_zero_nat ) ).

% bits_mod_div_trivial
thf(fact_4052_bits__mod__div__trivial,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( divide6298287555418463151nteger @ ( modulo364778990260209775nteger @ A @ B ) @ B )
      = zero_z3403309356797280102nteger ) ).

% bits_mod_div_trivial
thf(fact_4053_bits__mod__div__trivial,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( divide5121882707175180666atural @ ( modulo8411746178871703098atural @ A @ B ) @ B )
      = zero_z2226904508553997617atural ) ).

% bits_mod_div_trivial
thf(fact_4054_abs__neg__numeral,axiom,
    ! [N: num] :
      ( ( abs_abs_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( numeral_numeral_int @ N ) ) ).

% abs_neg_numeral
thf(fact_4055_abs__neg__numeral,axiom,
    ! [N: num] :
      ( ( abs_abs_Code_integer @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) )
      = ( numera6620942414471956472nteger @ N ) ) ).

% abs_neg_numeral
thf(fact_4056_abs__neg__numeral,axiom,
    ! [N: num] :
      ( ( abs_abs_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) )
      = ( numeral_numeral_rat @ N ) ) ).

% abs_neg_numeral
thf(fact_4057_power__int__mult__distrib__numeral1,axiom,
    ! [W2: num,Y: rat,M: int] :
      ( ( power_int_rat @ ( times_times_rat @ ( numeral_numeral_rat @ W2 ) @ Y ) @ M )
      = ( times_times_rat @ ( power_int_rat @ ( numeral_numeral_rat @ W2 ) @ M ) @ ( power_int_rat @ Y @ M ) ) ) ).

% power_int_mult_distrib_numeral1
thf(fact_4058_power__int__mult__distrib__numeral2,axiom,
    ! [X2: rat,W2: num,M: int] :
      ( ( power_int_rat @ ( times_times_rat @ X2 @ ( numeral_numeral_rat @ W2 ) ) @ M )
      = ( times_times_rat @ ( power_int_rat @ X2 @ M ) @ ( power_int_rat @ ( numeral_numeral_rat @ W2 ) @ M ) ) ) ).

% power_int_mult_distrib_numeral2
thf(fact_4059_mod__by__Suc__0,axiom,
    ! [M: nat] :
      ( ( modulo_modulo_nat @ M @ ( suc @ zero_zero_nat ) )
      = zero_zero_nat ) ).

% mod_by_Suc_0
thf(fact_4060_nat__neg__numeral,axiom,
    ! [K: num] :
      ( ( nat2 @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) )
      = zero_zero_nat ) ).

% nat_neg_numeral
thf(fact_4061_nat__power__eq__Suc__0__iff,axiom,
    ! [X2: nat,M: nat] :
      ( ( ( power_power_nat @ X2 @ M )
        = ( suc @ zero_zero_nat ) )
      = ( ( M = zero_zero_nat )
        | ( X2
          = ( suc @ zero_zero_nat ) ) ) ) ).

% nat_power_eq_Suc_0_iff
thf(fact_4062_power__Suc__0,axiom,
    ! [N: nat] :
      ( ( power_power_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( suc @ zero_zero_nat ) ) ).

% power_Suc_0
thf(fact_4063_nat__zero__less__power__iff,axiom,
    ! [X2: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( power_power_nat @ X2 @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ X2 )
        | ( N = zero_zero_nat ) ) ) ).

% nat_zero_less_power_iff
thf(fact_4064_diff__nat__numeral,axiom,
    ! [V: num,V2: num] :
      ( ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ ( numeral_numeral_nat @ V2 ) )
      = ( nat2 @ ( minus_minus_int @ ( numeral_numeral_int @ V ) @ ( numeral_numeral_int @ V2 ) ) ) ) ).

% diff_nat_numeral
thf(fact_4065_nat__eq__numeral__power__cancel__iff,axiom,
    ! [Y: int,X2: num,N: nat] :
      ( ( ( nat2 @ Y )
        = ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N ) )
      = ( Y
        = ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) ) ) ).

% nat_eq_numeral_power_cancel_iff
thf(fact_4066_numeral__power__eq__nat__cancel__iff,axiom,
    ! [X2: num,N: nat,Y: int] :
      ( ( ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N )
        = ( nat2 @ Y ) )
      = ( ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N )
        = Y ) ) ).

% numeral_power_eq_nat_cancel_iff
thf(fact_4067_dbl__simps_I1_J,axiom,
    ! [K: num] :
      ( ( neg_numeral_dbl_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) )
      = ( uminus_uminus_int @ ( neg_numeral_dbl_int @ ( numeral_numeral_int @ K ) ) ) ) ).

% dbl_simps(1)
thf(fact_4068_dbl__simps_I1_J,axiom,
    ! [K: num] :
      ( ( neg_nu8804712462038260780nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ K ) ) )
      = ( uminus1351360451143612070nteger @ ( neg_nu8804712462038260780nteger @ ( numera6620942414471956472nteger @ K ) ) ) ) ).

% dbl_simps(1)
thf(fact_4069_dbl__simps_I1_J,axiom,
    ! [K: num] :
      ( ( neg_numeral_dbl_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ K ) ) )
      = ( uminus_uminus_rat @ ( neg_numeral_dbl_rat @ ( numeral_numeral_rat @ K ) ) ) ) ).

% dbl_simps(1)
thf(fact_4070_le__divide__eq__numeral1_I1_J,axiom,
    ! [A: rat,B: rat,W2: num] :
      ( ( ord_less_eq_rat @ A @ ( divide_divide_rat @ B @ ( numeral_numeral_rat @ W2 ) ) )
      = ( ord_less_eq_rat @ ( times_times_rat @ A @ ( numeral_numeral_rat @ W2 ) ) @ B ) ) ).

% le_divide_eq_numeral1(1)
thf(fact_4071_divide__le__eq__numeral1_I1_J,axiom,
    ! [B: rat,W2: num,A: rat] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ ( numeral_numeral_rat @ W2 ) ) @ A )
      = ( ord_less_eq_rat @ B @ ( times_times_rat @ A @ ( numeral_numeral_rat @ W2 ) ) ) ) ).

% divide_le_eq_numeral1(1)
thf(fact_4072_eq__divide__eq__numeral1_I1_J,axiom,
    ! [A: rat,B: rat,W2: num] :
      ( ( A
        = ( divide_divide_rat @ B @ ( numeral_numeral_rat @ W2 ) ) )
      = ( ( ( ( numeral_numeral_rat @ W2 )
           != zero_zero_rat )
         => ( ( times_times_rat @ A @ ( numeral_numeral_rat @ W2 ) )
            = B ) )
        & ( ( ( numeral_numeral_rat @ W2 )
            = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% eq_divide_eq_numeral1(1)
thf(fact_4073_divide__eq__eq__numeral1_I1_J,axiom,
    ! [B: rat,W2: num,A: rat] :
      ( ( ( divide_divide_rat @ B @ ( numeral_numeral_rat @ W2 ) )
        = A )
      = ( ( ( ( numeral_numeral_rat @ W2 )
           != zero_zero_rat )
         => ( B
            = ( times_times_rat @ A @ ( numeral_numeral_rat @ W2 ) ) ) )
        & ( ( ( numeral_numeral_rat @ W2 )
            = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% divide_eq_eq_numeral1(1)
thf(fact_4074_divide__less__eq__numeral1_I1_J,axiom,
    ! [B: rat,W2: num,A: rat] :
      ( ( ord_less_rat @ ( divide_divide_rat @ B @ ( numeral_numeral_rat @ W2 ) ) @ A )
      = ( ord_less_rat @ B @ ( times_times_rat @ A @ ( numeral_numeral_rat @ W2 ) ) ) ) ).

% divide_less_eq_numeral1(1)
thf(fact_4075_less__divide__eq__numeral1_I1_J,axiom,
    ! [A: rat,B: rat,W2: num] :
      ( ( ord_less_rat @ A @ ( divide_divide_rat @ B @ ( numeral_numeral_rat @ W2 ) ) )
      = ( ord_less_rat @ ( times_times_rat @ A @ ( numeral_numeral_rat @ W2 ) ) @ B ) ) ).

% less_divide_eq_numeral1(1)
thf(fact_4076_mod__minus1__right,axiom,
    ! [A: int] :
      ( ( modulo_modulo_int @ A @ ( uminus_uminus_int @ one_one_int ) )
      = zero_zero_int ) ).

% mod_minus1_right
thf(fact_4077_mod__minus1__right,axiom,
    ! [A: code_integer] :
      ( ( modulo364778990260209775nteger @ A @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = zero_z3403309356797280102nteger ) ).

% mod_minus1_right
thf(fact_4078_of__int__numeral__le__iff,axiom,
    ! [N: num,Z2: int] :
      ( ( ord_le3102999989581377725nteger @ ( numera6620942414471956472nteger @ N ) @ ( ring_18347121197199848620nteger @ Z2 ) )
      = ( ord_less_eq_int @ ( numeral_numeral_int @ N ) @ Z2 ) ) ).

% of_int_numeral_le_iff
thf(fact_4079_of__int__numeral__le__iff,axiom,
    ! [N: num,Z2: int] :
      ( ( ord_less_eq_rat @ ( numeral_numeral_rat @ N ) @ ( ring_1_of_int_rat @ Z2 ) )
      = ( ord_less_eq_int @ ( numeral_numeral_int @ N ) @ Z2 ) ) ).

% of_int_numeral_le_iff
thf(fact_4080_of__int__numeral__le__iff,axiom,
    ! [N: num,Z2: int] :
      ( ( ord_less_eq_int @ ( numeral_numeral_int @ N ) @ ( ring_1_of_int_int @ Z2 ) )
      = ( ord_less_eq_int @ ( numeral_numeral_int @ N ) @ Z2 ) ) ).

% of_int_numeral_le_iff
thf(fact_4081_of__int__le__numeral__iff,axiom,
    ! [Z2: int,N: num] :
      ( ( ord_le3102999989581377725nteger @ ( ring_18347121197199848620nteger @ Z2 ) @ ( numera6620942414471956472nteger @ N ) )
      = ( ord_less_eq_int @ Z2 @ ( numeral_numeral_int @ N ) ) ) ).

% of_int_le_numeral_iff
thf(fact_4082_of__int__le__numeral__iff,axiom,
    ! [Z2: int,N: num] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ Z2 ) @ ( numeral_numeral_rat @ N ) )
      = ( ord_less_eq_int @ Z2 @ ( numeral_numeral_int @ N ) ) ) ).

% of_int_le_numeral_iff
thf(fact_4083_of__int__le__numeral__iff,axiom,
    ! [Z2: int,N: num] :
      ( ( ord_less_eq_int @ ( ring_1_of_int_int @ Z2 ) @ ( numeral_numeral_int @ N ) )
      = ( ord_less_eq_int @ Z2 @ ( numeral_numeral_int @ N ) ) ) ).

% of_int_le_numeral_iff
thf(fact_4084_of__int__numeral__less__iff,axiom,
    ! [N: num,Z2: int] :
      ( ( ord_less_int @ ( numeral_numeral_int @ N ) @ ( ring_1_of_int_int @ Z2 ) )
      = ( ord_less_int @ ( numeral_numeral_int @ N ) @ Z2 ) ) ).

% of_int_numeral_less_iff
thf(fact_4085_of__int__numeral__less__iff,axiom,
    ! [N: num,Z2: int] :
      ( ( ord_le6747313008572928689nteger @ ( numera6620942414471956472nteger @ N ) @ ( ring_18347121197199848620nteger @ Z2 ) )
      = ( ord_less_int @ ( numeral_numeral_int @ N ) @ Z2 ) ) ).

% of_int_numeral_less_iff
thf(fact_4086_of__int__numeral__less__iff,axiom,
    ! [N: num,Z2: int] :
      ( ( ord_less_rat @ ( numeral_numeral_rat @ N ) @ ( ring_1_of_int_rat @ Z2 ) )
      = ( ord_less_int @ ( numeral_numeral_int @ N ) @ Z2 ) ) ).

% of_int_numeral_less_iff
thf(fact_4087_of__int__less__numeral__iff,axiom,
    ! [Z2: int,N: num] :
      ( ( ord_less_int @ ( ring_1_of_int_int @ Z2 ) @ ( numeral_numeral_int @ N ) )
      = ( ord_less_int @ Z2 @ ( numeral_numeral_int @ N ) ) ) ).

% of_int_less_numeral_iff
thf(fact_4088_of__int__less__numeral__iff,axiom,
    ! [Z2: int,N: num] :
      ( ( ord_le6747313008572928689nteger @ ( ring_18347121197199848620nteger @ Z2 ) @ ( numera6620942414471956472nteger @ N ) )
      = ( ord_less_int @ Z2 @ ( numeral_numeral_int @ N ) ) ) ).

% of_int_less_numeral_iff
thf(fact_4089_of__int__less__numeral__iff,axiom,
    ! [Z2: int,N: num] :
      ( ( ord_less_rat @ ( ring_1_of_int_rat @ Z2 ) @ ( numeral_numeral_rat @ N ) )
      = ( ord_less_int @ Z2 @ ( numeral_numeral_int @ N ) ) ) ).

% of_int_less_numeral_iff
thf(fact_4090_numeral__le__floor,axiom,
    ! [V: num,X2: rat] :
      ( ( ord_less_eq_int @ ( numeral_numeral_int @ V ) @ ( archim3151403230148437115or_rat @ X2 ) )
      = ( ord_less_eq_rat @ ( numeral_numeral_rat @ V ) @ X2 ) ) ).

% numeral_le_floor
thf(fact_4091_floor__less__numeral,axiom,
    ! [X2: rat,V: num] :
      ( ( ord_less_int @ ( archim3151403230148437115or_rat @ X2 ) @ ( numeral_numeral_int @ V ) )
      = ( ord_less_rat @ X2 @ ( numeral_numeral_rat @ V ) ) ) ).

% floor_less_numeral
thf(fact_4092_ceiling__le__numeral,axiom,
    ! [X2: rat,V: num] :
      ( ( ord_less_eq_int @ ( archim2889992004027027881ng_rat @ X2 ) @ ( numeral_numeral_int @ V ) )
      = ( ord_less_eq_rat @ X2 @ ( numeral_numeral_rat @ V ) ) ) ).

% ceiling_le_numeral
thf(fact_4093_numeral__less__ceiling,axiom,
    ! [V: num,X2: rat] :
      ( ( ord_less_int @ ( numeral_numeral_int @ V ) @ ( archim2889992004027027881ng_rat @ X2 ) )
      = ( ord_less_rat @ ( numeral_numeral_rat @ V ) @ X2 ) ) ).

% numeral_less_ceiling
thf(fact_4094_numeral__power__eq__of__nat__cancel__iff,axiom,
    ! [X2: num,N: nat,Y: nat] :
      ( ( ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N )
        = ( semiri1314217659103216013at_int @ Y ) )
      = ( ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N )
        = Y ) ) ).

% numeral_power_eq_of_nat_cancel_iff
thf(fact_4095_numeral__power__eq__of__nat__cancel__iff,axiom,
    ! [X2: num,N: nat,Y: nat] :
      ( ( ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N )
        = ( semiri1316708129612266289at_nat @ Y ) )
      = ( ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N )
        = Y ) ) ).

% numeral_power_eq_of_nat_cancel_iff
thf(fact_4096_numeral__power__eq__of__nat__cancel__iff,axiom,
    ! [X2: num,N: nat,Y: nat] :
      ( ( ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ X2 ) @ N )
        = ( semiri4939895301339042750nteger @ Y ) )
      = ( ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N )
        = Y ) ) ).

% numeral_power_eq_of_nat_cancel_iff
thf(fact_4097_numeral__power__eq__of__nat__cancel__iff,axiom,
    ! [X2: num,N: nat,Y: nat] :
      ( ( ( power_power_rat @ ( numeral_numeral_rat @ X2 ) @ N )
        = ( semiri681578069525770553at_rat @ Y ) )
      = ( ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N )
        = Y ) ) ).

% numeral_power_eq_of_nat_cancel_iff
thf(fact_4098_numeral__power__eq__of__nat__cancel__iff,axiom,
    ! [X2: num,N: nat,Y: nat] :
      ( ( ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ X2 ) @ N )
        = ( semiri3763490453095760265atural @ Y ) )
      = ( ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N )
        = Y ) ) ).

% numeral_power_eq_of_nat_cancel_iff
thf(fact_4099_real__of__nat__eq__numeral__power__cancel__iff,axiom,
    ! [Y: nat,X2: num,N: nat] :
      ( ( ( semiri1314217659103216013at_int @ Y )
        = ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) )
      = ( Y
        = ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N ) ) ) ).

% real_of_nat_eq_numeral_power_cancel_iff
thf(fact_4100_real__of__nat__eq__numeral__power__cancel__iff,axiom,
    ! [Y: nat,X2: num,N: nat] :
      ( ( ( semiri1316708129612266289at_nat @ Y )
        = ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N ) )
      = ( Y
        = ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N ) ) ) ).

% real_of_nat_eq_numeral_power_cancel_iff
thf(fact_4101_real__of__nat__eq__numeral__power__cancel__iff,axiom,
    ! [Y: nat,X2: num,N: nat] :
      ( ( ( semiri4939895301339042750nteger @ Y )
        = ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ X2 ) @ N ) )
      = ( Y
        = ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N ) ) ) ).

% real_of_nat_eq_numeral_power_cancel_iff
thf(fact_4102_real__of__nat__eq__numeral__power__cancel__iff,axiom,
    ! [Y: nat,X2: num,N: nat] :
      ( ( ( semiri681578069525770553at_rat @ Y )
        = ( power_power_rat @ ( numeral_numeral_rat @ X2 ) @ N ) )
      = ( Y
        = ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N ) ) ) ).

% real_of_nat_eq_numeral_power_cancel_iff
thf(fact_4103_real__of__nat__eq__numeral__power__cancel__iff,axiom,
    ! [Y: nat,X2: num,N: nat] :
      ( ( ( semiri3763490453095760265atural @ Y )
        = ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ X2 ) @ N ) )
      = ( Y
        = ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N ) ) ) ).

% real_of_nat_eq_numeral_power_cancel_iff
thf(fact_4104_Suc__mod__mult__self1,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( plus_plus_nat @ M @ ( times_times_nat @ K @ N ) ) ) @ N )
      = ( modulo_modulo_nat @ ( suc @ M ) @ N ) ) ).

% Suc_mod_mult_self1
thf(fact_4105_Suc__mod__mult__self2,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( plus_plus_nat @ M @ ( times_times_nat @ N @ K ) ) ) @ N )
      = ( modulo_modulo_nat @ ( suc @ M ) @ N ) ) ).

% Suc_mod_mult_self2
thf(fact_4106_Suc__mod__mult__self3,axiom,
    ! [K: nat,N: nat,M: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( plus_plus_nat @ ( times_times_nat @ K @ N ) @ M ) ) @ N )
      = ( modulo_modulo_nat @ ( suc @ M ) @ N ) ) ).

% Suc_mod_mult_self3
thf(fact_4107_Suc__mod__mult__self4,axiom,
    ! [N: nat,K: nat,M: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( plus_plus_nat @ ( times_times_nat @ N @ K ) @ M ) ) @ N )
      = ( modulo_modulo_nat @ ( suc @ M ) @ N ) ) ).

% Suc_mod_mult_self4
thf(fact_4108_floor__neg__numeral,axiom,
    ! [V: num] :
      ( ( archim3151403230148437115or_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) ) ).

% floor_neg_numeral
thf(fact_4109_ceiling__add__numeral,axiom,
    ! [X2: rat,V: num] :
      ( ( archim2889992004027027881ng_rat @ ( plus_plus_rat @ X2 @ ( numeral_numeral_rat @ V ) ) )
      = ( plus_plus_int @ ( archim2889992004027027881ng_rat @ X2 ) @ ( numeral_numeral_int @ V ) ) ) ).

% ceiling_add_numeral
thf(fact_4110_floor__diff__numeral,axiom,
    ! [X2: rat,V: num] :
      ( ( archim3151403230148437115or_rat @ ( minus_minus_rat @ X2 @ ( numeral_numeral_rat @ V ) ) )
      = ( minus_minus_int @ ( archim3151403230148437115or_rat @ X2 ) @ ( numeral_numeral_int @ V ) ) ) ).

% floor_diff_numeral
thf(fact_4111_ceiling__neg__numeral,axiom,
    ! [V: num] :
      ( ( archim2889992004027027881ng_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) ) ).

% ceiling_neg_numeral
thf(fact_4112_Suc__times__numeral__mod__eq,axiom,
    ! [K: num,N: nat] :
      ( ( ( numeral_numeral_nat @ K )
       != one_one_nat )
     => ( ( modulo_modulo_nat @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ K ) @ N ) ) @ ( numeral_numeral_nat @ K ) )
        = one_one_nat ) ) ).

% Suc_times_numeral_mod_eq
thf(fact_4113_ceiling__diff__numeral,axiom,
    ! [X2: rat,V: num] :
      ( ( archim2889992004027027881ng_rat @ ( minus_minus_rat @ X2 @ ( numeral_numeral_rat @ V ) ) )
      = ( minus_minus_int @ ( archim2889992004027027881ng_rat @ X2 ) @ ( numeral_numeral_int @ V ) ) ) ).

% ceiling_diff_numeral
thf(fact_4114_of__int__eq__numeral__power__cancel__iff,axiom,
    ! [Y: int,X2: num,N: nat] :
      ( ( ( ring_1_of_int_int @ Y )
        = ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) )
      = ( Y
        = ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) ) ) ).

% of_int_eq_numeral_power_cancel_iff
thf(fact_4115_of__int__eq__numeral__power__cancel__iff,axiom,
    ! [Y: int,X2: num,N: nat] :
      ( ( ( ring_18347121197199848620nteger @ Y )
        = ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ X2 ) @ N ) )
      = ( Y
        = ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) ) ) ).

% of_int_eq_numeral_power_cancel_iff
thf(fact_4116_of__int__eq__numeral__power__cancel__iff,axiom,
    ! [Y: int,X2: num,N: nat] :
      ( ( ( ring_1_of_int_rat @ Y )
        = ( power_power_rat @ ( numeral_numeral_rat @ X2 ) @ N ) )
      = ( Y
        = ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) ) ) ).

% of_int_eq_numeral_power_cancel_iff
thf(fact_4117_numeral__power__eq__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,Y: int] :
      ( ( ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N )
        = ( ring_1_of_int_int @ Y ) )
      = ( ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N )
        = Y ) ) ).

% numeral_power_eq_of_int_cancel_iff
thf(fact_4118_numeral__power__eq__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,Y: int] :
      ( ( ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ X2 ) @ N )
        = ( ring_18347121197199848620nteger @ Y ) )
      = ( ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N )
        = Y ) ) ).

% numeral_power_eq_of_int_cancel_iff
thf(fact_4119_numeral__power__eq__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,Y: int] :
      ( ( ( power_power_rat @ ( numeral_numeral_rat @ X2 ) @ N )
        = ( ring_1_of_int_rat @ Y ) )
      = ( ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N )
        = Y ) ) ).

% numeral_power_eq_of_int_cancel_iff
thf(fact_4120_mod__neg__neg__trivial,axiom,
    ! [K: int,L: int] :
      ( ( ord_less_eq_int @ K @ zero_zero_int )
     => ( ( ord_less_int @ L @ K )
       => ( ( modulo_modulo_int @ K @ L )
          = K ) ) ) ).

% mod_neg_neg_trivial
thf(fact_4121_mod__pos__pos__trivial,axiom,
    ! [K: int,L: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ( ( ord_less_int @ K @ L )
       => ( ( modulo_modulo_int @ K @ L )
          = K ) ) ) ).

% mod_pos_pos_trivial
thf(fact_4122_le__divide__eq__numeral1_I2_J,axiom,
    ! [A: rat,B: rat,W2: num] :
      ( ( ord_less_eq_rat @ A @ ( divide_divide_rat @ B @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) ) )
      = ( ord_less_eq_rat @ B @ ( times_times_rat @ A @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) ) ) ) ).

% le_divide_eq_numeral1(2)
thf(fact_4123_divide__le__eq__numeral1_I2_J,axiom,
    ! [B: rat,W2: num,A: rat] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) ) @ A )
      = ( ord_less_eq_rat @ ( times_times_rat @ A @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) ) @ B ) ) ).

% divide_le_eq_numeral1(2)
thf(fact_4124_eq__divide__eq__numeral1_I2_J,axiom,
    ! [A: rat,B: rat,W2: num] :
      ( ( A
        = ( divide_divide_rat @ B @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) ) )
      = ( ( ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) )
           != zero_zero_rat )
         => ( ( times_times_rat @ A @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) )
            = B ) )
        & ( ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) )
            = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% eq_divide_eq_numeral1(2)
thf(fact_4125_divide__eq__eq__numeral1_I2_J,axiom,
    ! [B: rat,W2: num,A: rat] :
      ( ( ( divide_divide_rat @ B @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) )
        = A )
      = ( ( ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) )
           != zero_zero_rat )
         => ( B
            = ( times_times_rat @ A @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) ) ) )
        & ( ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) )
            = zero_zero_rat )
         => ( A = zero_zero_rat ) ) ) ) ).

% divide_eq_eq_numeral1(2)
thf(fact_4126_less__divide__eq__numeral1_I2_J,axiom,
    ! [A: rat,B: rat,W2: num] :
      ( ( ord_less_rat @ A @ ( divide_divide_rat @ B @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) ) )
      = ( ord_less_rat @ B @ ( times_times_rat @ A @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) ) ) ) ).

% less_divide_eq_numeral1(2)
thf(fact_4127_divide__less__eq__numeral1_I2_J,axiom,
    ! [B: rat,W2: num,A: rat] :
      ( ( ord_less_rat @ ( divide_divide_rat @ B @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) ) @ A )
      = ( ord_less_rat @ ( times_times_rat @ A @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) ) @ B ) ) ).

% divide_less_eq_numeral1(2)
thf(fact_4128_dbl__dec__simps_I1_J,axiom,
    ! [K: num] :
      ( ( neg_nu3811975205180677377ec_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) )
      = ( uminus_uminus_int @ ( neg_nu5851722552734809277nc_int @ ( numeral_numeral_int @ K ) ) ) ) ).

% dbl_dec_simps(1)
thf(fact_4129_dbl__dec__simps_I1_J,axiom,
    ! [K: num] :
      ( ( neg_nu7757733837767384882nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ K ) ) )
      = ( uminus1351360451143612070nteger @ ( neg_nu5831290666863070958nteger @ ( numera6620942414471956472nteger @ K ) ) ) ) ).

% dbl_dec_simps(1)
thf(fact_4130_dbl__dec__simps_I1_J,axiom,
    ! [K: num] :
      ( ( neg_nu3179335615603231917ec_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ K ) ) )
      = ( uminus_uminus_rat @ ( neg_nu5219082963157363817nc_rat @ ( numeral_numeral_rat @ K ) ) ) ) ).

% dbl_dec_simps(1)
thf(fact_4131_dbl__inc__simps_I1_J,axiom,
    ! [K: num] :
      ( ( neg_nu5851722552734809277nc_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) )
      = ( uminus_uminus_int @ ( neg_nu3811975205180677377ec_int @ ( numeral_numeral_int @ K ) ) ) ) ).

% dbl_inc_simps(1)
thf(fact_4132_dbl__inc__simps_I1_J,axiom,
    ! [K: num] :
      ( ( neg_nu5831290666863070958nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ K ) ) )
      = ( uminus1351360451143612070nteger @ ( neg_nu7757733837767384882nteger @ ( numera6620942414471956472nteger @ K ) ) ) ) ).

% dbl_inc_simps(1)
thf(fact_4133_dbl__inc__simps_I1_J,axiom,
    ! [K: num] :
      ( ( neg_nu5219082963157363817nc_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ K ) ) )
      = ( uminus_uminus_rat @ ( neg_nu3179335615603231917ec_rat @ ( numeral_numeral_rat @ K ) ) ) ) ).

% dbl_inc_simps(1)
thf(fact_4134_nat__numeral__diff__1,axiom,
    ! [V: num] :
      ( ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat )
      = ( nat2 @ ( minus_minus_int @ ( numeral_numeral_int @ V ) @ one_one_int ) ) ) ).

% nat_numeral_diff_1
thf(fact_4135_numeral__power__less__nat__cancel__iff,axiom,
    ! [X2: num,N: nat,A: int] :
      ( ( ord_less_nat @ ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N ) @ ( nat2 @ A ) )
      = ( ord_less_int @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) @ A ) ) ).

% numeral_power_less_nat_cancel_iff
thf(fact_4136_nat__less__numeral__power__cancel__iff,axiom,
    ! [A: int,X2: num,N: nat] :
      ( ( ord_less_nat @ ( nat2 @ A ) @ ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N ) )
      = ( ord_less_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) ) ) ).

% nat_less_numeral_power_cancel_iff
thf(fact_4137_nat__le__numeral__power__cancel__iff,axiom,
    ! [A: int,X2: num,N: nat] :
      ( ( ord_less_eq_nat @ ( nat2 @ A ) @ ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N ) )
      = ( ord_less_eq_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) ) ) ).

% nat_le_numeral_power_cancel_iff
thf(fact_4138_numeral__power__le__nat__cancel__iff,axiom,
    ! [X2: num,N: nat,A: int] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ ( numeral_numeral_nat @ X2 ) @ N ) @ ( nat2 @ A ) )
      = ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) @ A ) ) ).

% numeral_power_le_nat_cancel_iff
thf(fact_4139_numeral__less__floor,axiom,
    ! [V: num,X2: rat] :
      ( ( ord_less_int @ ( numeral_numeral_int @ V ) @ ( archim3151403230148437115or_rat @ X2 ) )
      = ( ord_less_eq_rat @ ( plus_plus_rat @ ( numeral_numeral_rat @ V ) @ one_one_rat ) @ X2 ) ) ).

% numeral_less_floor
thf(fact_4140_floor__le__numeral,axiom,
    ! [X2: rat,V: num] :
      ( ( ord_less_eq_int @ ( archim3151403230148437115or_rat @ X2 ) @ ( numeral_numeral_int @ V ) )
      = ( ord_less_rat @ X2 @ ( plus_plus_rat @ ( numeral_numeral_rat @ V ) @ one_one_rat ) ) ) ).

% floor_le_numeral
thf(fact_4141_ceiling__less__numeral,axiom,
    ! [X2: rat,V: num] :
      ( ( ord_less_int @ ( archim2889992004027027881ng_rat @ X2 ) @ ( numeral_numeral_int @ V ) )
      = ( ord_less_eq_rat @ X2 @ ( minus_minus_rat @ ( numeral_numeral_rat @ V ) @ one_one_rat ) ) ) ).

% ceiling_less_numeral
thf(fact_4142_numeral__le__ceiling,axiom,
    ! [V: num,X2: rat] :
      ( ( ord_less_eq_int @ ( numeral_numeral_int @ V ) @ ( archim2889992004027027881ng_rat @ X2 ) )
      = ( ord_less_rat @ ( minus_minus_rat @ ( numeral_numeral_rat @ V ) @ one_one_rat ) @ X2 ) ) ).

% numeral_le_ceiling
thf(fact_4143_numeral__power__less__of__nat__cancel__iff,axiom,
    ! [I: num,N: nat,X2: nat] :
      ( ( ord_less_int @ ( power_power_int @ ( numeral_numeral_int @ I ) @ N ) @ ( semiri1314217659103216013at_int @ X2 ) )
      = ( ord_less_nat @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) @ X2 ) ) ).

% numeral_power_less_of_nat_cancel_iff
thf(fact_4144_numeral__power__less__of__nat__cancel__iff,axiom,
    ! [I: num,N: nat,X2: nat] :
      ( ( ord_less_nat @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) @ ( semiri1316708129612266289at_nat @ X2 ) )
      = ( ord_less_nat @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) @ X2 ) ) ).

% numeral_power_less_of_nat_cancel_iff
thf(fact_4145_numeral__power__less__of__nat__cancel__iff,axiom,
    ! [I: num,N: nat,X2: nat] :
      ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ I ) @ N ) @ ( semiri4939895301339042750nteger @ X2 ) )
      = ( ord_less_nat @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) @ X2 ) ) ).

% numeral_power_less_of_nat_cancel_iff
thf(fact_4146_numeral__power__less__of__nat__cancel__iff,axiom,
    ! [I: num,N: nat,X2: nat] :
      ( ( ord_less_rat @ ( power_power_rat @ ( numeral_numeral_rat @ I ) @ N ) @ ( semiri681578069525770553at_rat @ X2 ) )
      = ( ord_less_nat @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) @ X2 ) ) ).

% numeral_power_less_of_nat_cancel_iff
thf(fact_4147_numeral__power__less__of__nat__cancel__iff,axiom,
    ! [I: num,N: nat,X2: nat] :
      ( ( ord_le5570908160329646204atural @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ I ) @ N ) @ ( semiri3763490453095760265atural @ X2 ) )
      = ( ord_less_nat @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) @ X2 ) ) ).

% numeral_power_less_of_nat_cancel_iff
thf(fact_4148_of__nat__less__numeral__power__cancel__iff,axiom,
    ! [X2: nat,I: num,N: nat] :
      ( ( ord_less_int @ ( semiri1314217659103216013at_int @ X2 ) @ ( power_power_int @ ( numeral_numeral_int @ I ) @ N ) )
      = ( ord_less_nat @ X2 @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) ) ) ).

% of_nat_less_numeral_power_cancel_iff
thf(fact_4149_of__nat__less__numeral__power__cancel__iff,axiom,
    ! [X2: nat,I: num,N: nat] :
      ( ( ord_less_nat @ ( semiri1316708129612266289at_nat @ X2 ) @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) )
      = ( ord_less_nat @ X2 @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) ) ) ).

% of_nat_less_numeral_power_cancel_iff
thf(fact_4150_of__nat__less__numeral__power__cancel__iff,axiom,
    ! [X2: nat,I: num,N: nat] :
      ( ( ord_le6747313008572928689nteger @ ( semiri4939895301339042750nteger @ X2 ) @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ I ) @ N ) )
      = ( ord_less_nat @ X2 @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) ) ) ).

% of_nat_less_numeral_power_cancel_iff
thf(fact_4151_of__nat__less__numeral__power__cancel__iff,axiom,
    ! [X2: nat,I: num,N: nat] :
      ( ( ord_less_rat @ ( semiri681578069525770553at_rat @ X2 ) @ ( power_power_rat @ ( numeral_numeral_rat @ I ) @ N ) )
      = ( ord_less_nat @ X2 @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) ) ) ).

% of_nat_less_numeral_power_cancel_iff
thf(fact_4152_of__nat__less__numeral__power__cancel__iff,axiom,
    ! [X2: nat,I: num,N: nat] :
      ( ( ord_le5570908160329646204atural @ ( semiri3763490453095760265atural @ X2 ) @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ I ) @ N ) )
      = ( ord_less_nat @ X2 @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) ) ) ).

% of_nat_less_numeral_power_cancel_iff
thf(fact_4153_of__nat__le__numeral__power__cancel__iff,axiom,
    ! [X2: nat,I: num,N: nat] :
      ( ( ord_le3102999989581377725nteger @ ( semiri4939895301339042750nteger @ X2 ) @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ I ) @ N ) )
      = ( ord_less_eq_nat @ X2 @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) ) ) ).

% of_nat_le_numeral_power_cancel_iff
thf(fact_4154_of__nat__le__numeral__power__cancel__iff,axiom,
    ! [X2: nat,I: num,N: nat] :
      ( ( ord_le1926595141338095240atural @ ( semiri3763490453095760265atural @ X2 ) @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ I ) @ N ) )
      = ( ord_less_eq_nat @ X2 @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) ) ) ).

% of_nat_le_numeral_power_cancel_iff
thf(fact_4155_of__nat__le__numeral__power__cancel__iff,axiom,
    ! [X2: nat,I: num,N: nat] :
      ( ( ord_less_eq_rat @ ( semiri681578069525770553at_rat @ X2 ) @ ( power_power_rat @ ( numeral_numeral_rat @ I ) @ N ) )
      = ( ord_less_eq_nat @ X2 @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) ) ) ).

% of_nat_le_numeral_power_cancel_iff
thf(fact_4156_of__nat__le__numeral__power__cancel__iff,axiom,
    ! [X2: nat,I: num,N: nat] :
      ( ( ord_less_eq_nat @ ( semiri1316708129612266289at_nat @ X2 ) @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) )
      = ( ord_less_eq_nat @ X2 @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) ) ) ).

% of_nat_le_numeral_power_cancel_iff
thf(fact_4157_of__nat__le__numeral__power__cancel__iff,axiom,
    ! [X2: nat,I: num,N: nat] :
      ( ( ord_less_eq_int @ ( semiri1314217659103216013at_int @ X2 ) @ ( power_power_int @ ( numeral_numeral_int @ I ) @ N ) )
      = ( ord_less_eq_nat @ X2 @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) ) ) ).

% of_nat_le_numeral_power_cancel_iff
thf(fact_4158_numeral__power__le__of__nat__cancel__iff,axiom,
    ! [I: num,N: nat,X2: nat] :
      ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ I ) @ N ) @ ( semiri4939895301339042750nteger @ X2 ) )
      = ( ord_less_eq_nat @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) @ X2 ) ) ).

% numeral_power_le_of_nat_cancel_iff
thf(fact_4159_numeral__power__le__of__nat__cancel__iff,axiom,
    ! [I: num,N: nat,X2: nat] :
      ( ( ord_le1926595141338095240atural @ ( power_7079662738309270450atural @ ( numera5444537566228673987atural @ I ) @ N ) @ ( semiri3763490453095760265atural @ X2 ) )
      = ( ord_less_eq_nat @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) @ X2 ) ) ).

% numeral_power_le_of_nat_cancel_iff
thf(fact_4160_numeral__power__le__of__nat__cancel__iff,axiom,
    ! [I: num,N: nat,X2: nat] :
      ( ( ord_less_eq_rat @ ( power_power_rat @ ( numeral_numeral_rat @ I ) @ N ) @ ( semiri681578069525770553at_rat @ X2 ) )
      = ( ord_less_eq_nat @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) @ X2 ) ) ).

% numeral_power_le_of_nat_cancel_iff
thf(fact_4161_numeral__power__le__of__nat__cancel__iff,axiom,
    ! [I: num,N: nat,X2: nat] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) @ ( semiri1316708129612266289at_nat @ X2 ) )
      = ( ord_less_eq_nat @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) @ X2 ) ) ).

% numeral_power_le_of_nat_cancel_iff
thf(fact_4162_numeral__power__le__of__nat__cancel__iff,axiom,
    ! [I: num,N: nat,X2: nat] :
      ( ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ I ) @ N ) @ ( semiri1314217659103216013at_int @ X2 ) )
      = ( ord_less_eq_nat @ ( power_power_nat @ ( numeral_numeral_nat @ I ) @ N ) @ X2 ) ) ).

% numeral_power_le_of_nat_cancel_iff
thf(fact_4163_neg__numeral__le__floor,axiom,
    ! [V: num,X2: rat] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) @ ( archim3151403230148437115or_rat @ X2 ) )
      = ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) @ X2 ) ) ).

% neg_numeral_le_floor
thf(fact_4164_floor__less__neg__numeral,axiom,
    ! [X2: rat,V: num] :
      ( ( ord_less_int @ ( archim3151403230148437115or_rat @ X2 ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) )
      = ( ord_less_rat @ X2 @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) ) ) ).

% floor_less_neg_numeral
thf(fact_4165_ceiling__le__neg__numeral,axiom,
    ! [X2: rat,V: num] :
      ( ( ord_less_eq_int @ ( archim2889992004027027881ng_rat @ X2 ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) )
      = ( ord_less_eq_rat @ X2 @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) ) ) ).

% ceiling_le_neg_numeral
thf(fact_4166_neg__numeral__less__ceiling,axiom,
    ! [V: num,X2: rat] :
      ( ( ord_less_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) @ ( archim2889992004027027881ng_rat @ X2 ) )
      = ( ord_less_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) @ X2 ) ) ).

% neg_numeral_less_ceiling
thf(fact_4167_of__int__le__numeral__power__cancel__iff,axiom,
    ! [A: int,X2: num,N: nat] :
      ( ( ord_le3102999989581377725nteger @ ( ring_18347121197199848620nteger @ A ) @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ X2 ) @ N ) )
      = ( ord_less_eq_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) ) ) ).

% of_int_le_numeral_power_cancel_iff
thf(fact_4168_of__int__le__numeral__power__cancel__iff,axiom,
    ! [A: int,X2: num,N: nat] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ A ) @ ( power_power_rat @ ( numeral_numeral_rat @ X2 ) @ N ) )
      = ( ord_less_eq_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) ) ) ).

% of_int_le_numeral_power_cancel_iff
thf(fact_4169_of__int__le__numeral__power__cancel__iff,axiom,
    ! [A: int,X2: num,N: nat] :
      ( ( ord_less_eq_int @ ( ring_1_of_int_int @ A ) @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) )
      = ( ord_less_eq_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) ) ) ).

% of_int_le_numeral_power_cancel_iff
thf(fact_4170_numeral__power__le__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,A: int] :
      ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ X2 ) @ N ) @ ( ring_18347121197199848620nteger @ A ) )
      = ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) @ A ) ) ).

% numeral_power_le_of_int_cancel_iff
thf(fact_4171_numeral__power__le__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,A: int] :
      ( ( ord_less_eq_rat @ ( power_power_rat @ ( numeral_numeral_rat @ X2 ) @ N ) @ ( ring_1_of_int_rat @ A ) )
      = ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) @ A ) ) ).

% numeral_power_le_of_int_cancel_iff
thf(fact_4172_numeral__power__le__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,A: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) @ ( ring_1_of_int_int @ A ) )
      = ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) @ A ) ) ).

% numeral_power_le_of_int_cancel_iff
thf(fact_4173_numeral__power__less__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,A: int] :
      ( ( ord_less_int @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) @ ( ring_1_of_int_int @ A ) )
      = ( ord_less_int @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) @ A ) ) ).

% numeral_power_less_of_int_cancel_iff
thf(fact_4174_numeral__power__less__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,A: int] :
      ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ X2 ) @ N ) @ ( ring_18347121197199848620nteger @ A ) )
      = ( ord_less_int @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) @ A ) ) ).

% numeral_power_less_of_int_cancel_iff
thf(fact_4175_numeral__power__less__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,A: int] :
      ( ( ord_less_rat @ ( power_power_rat @ ( numeral_numeral_rat @ X2 ) @ N ) @ ( ring_1_of_int_rat @ A ) )
      = ( ord_less_int @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) @ A ) ) ).

% numeral_power_less_of_int_cancel_iff
thf(fact_4176_of__int__less__numeral__power__cancel__iff,axiom,
    ! [A: int,X2: num,N: nat] :
      ( ( ord_less_int @ ( ring_1_of_int_int @ A ) @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) )
      = ( ord_less_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) ) ) ).

% of_int_less_numeral_power_cancel_iff
thf(fact_4177_of__int__less__numeral__power__cancel__iff,axiom,
    ! [A: int,X2: num,N: nat] :
      ( ( ord_le6747313008572928689nteger @ ( ring_18347121197199848620nteger @ A ) @ ( power_8256067586552552935nteger @ ( numera6620942414471956472nteger @ X2 ) @ N ) )
      = ( ord_less_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) ) ) ).

% of_int_less_numeral_power_cancel_iff
thf(fact_4178_of__int__less__numeral__power__cancel__iff,axiom,
    ! [A: int,X2: num,N: nat] :
      ( ( ord_less_rat @ ( ring_1_of_int_rat @ A ) @ ( power_power_rat @ ( numeral_numeral_rat @ X2 ) @ N ) )
      = ( ord_less_int @ A @ ( power_power_int @ ( numeral_numeral_int @ X2 ) @ N ) ) ) ).

% of_int_less_numeral_power_cancel_iff
thf(fact_4179_of__int__eq__neg__numeral__power__cancel__iff,axiom,
    ! [Y: int,X2: num,N: nat] :
      ( ( ( ring_1_of_int_int @ Y )
        = ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) )
      = ( Y
        = ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) ) ) ).

% of_int_eq_neg_numeral_power_cancel_iff
thf(fact_4180_of__int__eq__neg__numeral__power__cancel__iff,axiom,
    ! [Y: int,X2: num,N: nat] :
      ( ( ( ring_18347121197199848620nteger @ Y )
        = ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ X2 ) ) @ N ) )
      = ( Y
        = ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) ) ) ).

% of_int_eq_neg_numeral_power_cancel_iff
thf(fact_4181_of__int__eq__neg__numeral__power__cancel__iff,axiom,
    ! [Y: int,X2: num,N: nat] :
      ( ( ( ring_1_of_int_rat @ Y )
        = ( power_power_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ X2 ) ) @ N ) )
      = ( Y
        = ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) ) ) ).

% of_int_eq_neg_numeral_power_cancel_iff
thf(fact_4182_neg__numeral__power__eq__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,Y: int] :
      ( ( ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N )
        = ( ring_1_of_int_int @ Y ) )
      = ( ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N )
        = Y ) ) ).

% neg_numeral_power_eq_of_int_cancel_iff
thf(fact_4183_neg__numeral__power__eq__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,Y: int] :
      ( ( ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ X2 ) ) @ N )
        = ( ring_18347121197199848620nteger @ Y ) )
      = ( ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N )
        = Y ) ) ).

% neg_numeral_power_eq_of_int_cancel_iff
thf(fact_4184_neg__numeral__power__eq__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,Y: int] :
      ( ( ( power_power_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ X2 ) ) @ N )
        = ( ring_1_of_int_rat @ Y ) )
      = ( ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N )
        = Y ) ) ).

% neg_numeral_power_eq_of_int_cancel_iff
thf(fact_4185_neg__numeral__less__floor,axiom,
    ! [V: num,X2: rat] :
      ( ( ord_less_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) @ ( archim3151403230148437115or_rat @ X2 ) )
      = ( ord_less_eq_rat @ ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) @ one_one_rat ) @ X2 ) ) ).

% neg_numeral_less_floor
thf(fact_4186_floor__le__neg__numeral,axiom,
    ! [X2: rat,V: num] :
      ( ( ord_less_eq_int @ ( archim3151403230148437115or_rat @ X2 ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) )
      = ( ord_less_rat @ X2 @ ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) @ one_one_rat ) ) ) ).

% floor_le_neg_numeral
thf(fact_4187_ceiling__less__neg__numeral,axiom,
    ! [X2: rat,V: num] :
      ( ( ord_less_int @ ( archim2889992004027027881ng_rat @ X2 ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) )
      = ( ord_less_eq_rat @ X2 @ ( minus_minus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) @ one_one_rat ) ) ) ).

% ceiling_less_neg_numeral
thf(fact_4188_neg__numeral__le__ceiling,axiom,
    ! [V: num,X2: rat] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) @ ( archim2889992004027027881ng_rat @ X2 ) )
      = ( ord_less_rat @ ( minus_minus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ V ) ) @ one_one_rat ) @ X2 ) ) ).

% neg_numeral_le_ceiling
thf(fact_4189_of__int__le__neg__numeral__power__cancel__iff,axiom,
    ! [A: int,X2: num,N: nat] :
      ( ( ord_le3102999989581377725nteger @ ( ring_18347121197199848620nteger @ A ) @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ X2 ) ) @ N ) )
      = ( ord_less_eq_int @ A @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) ) ) ).

% of_int_le_neg_numeral_power_cancel_iff
thf(fact_4190_of__int__le__neg__numeral__power__cancel__iff,axiom,
    ! [A: int,X2: num,N: nat] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ A ) @ ( power_power_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ X2 ) ) @ N ) )
      = ( ord_less_eq_int @ A @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) ) ) ).

% of_int_le_neg_numeral_power_cancel_iff
thf(fact_4191_of__int__le__neg__numeral__power__cancel__iff,axiom,
    ! [A: int,X2: num,N: nat] :
      ( ( ord_less_eq_int @ ( ring_1_of_int_int @ A ) @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) )
      = ( ord_less_eq_int @ A @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) ) ) ).

% of_int_le_neg_numeral_power_cancel_iff
thf(fact_4192_neg__numeral__power__le__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,A: int] :
      ( ( ord_le3102999989581377725nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ X2 ) ) @ N ) @ ( ring_18347121197199848620nteger @ A ) )
      = ( ord_less_eq_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) @ A ) ) ).

% neg_numeral_power_le_of_int_cancel_iff
thf(fact_4193_neg__numeral__power__le__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,A: int] :
      ( ( ord_less_eq_rat @ ( power_power_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ X2 ) ) @ N ) @ ( ring_1_of_int_rat @ A ) )
      = ( ord_less_eq_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) @ A ) ) ).

% neg_numeral_power_le_of_int_cancel_iff
thf(fact_4194_neg__numeral__power__le__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,A: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) @ ( ring_1_of_int_int @ A ) )
      = ( ord_less_eq_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) @ A ) ) ).

% neg_numeral_power_le_of_int_cancel_iff
thf(fact_4195_neg__numeral__power__less__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,A: int] :
      ( ( ord_less_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) @ ( ring_1_of_int_int @ A ) )
      = ( ord_less_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) @ A ) ) ).

% neg_numeral_power_less_of_int_cancel_iff
thf(fact_4196_neg__numeral__power__less__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,A: int] :
      ( ( ord_le6747313008572928689nteger @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ X2 ) ) @ N ) @ ( ring_18347121197199848620nteger @ A ) )
      = ( ord_less_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) @ A ) ) ).

% neg_numeral_power_less_of_int_cancel_iff
thf(fact_4197_neg__numeral__power__less__of__int__cancel__iff,axiom,
    ! [X2: num,N: nat,A: int] :
      ( ( ord_less_rat @ ( power_power_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ X2 ) ) @ N ) @ ( ring_1_of_int_rat @ A ) )
      = ( ord_less_int @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) @ A ) ) ).

% neg_numeral_power_less_of_int_cancel_iff
thf(fact_4198_of__int__less__neg__numeral__power__cancel__iff,axiom,
    ! [A: int,X2: num,N: nat] :
      ( ( ord_less_int @ ( ring_1_of_int_int @ A ) @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) )
      = ( ord_less_int @ A @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) ) ) ).

% of_int_less_neg_numeral_power_cancel_iff
thf(fact_4199_of__int__less__neg__numeral__power__cancel__iff,axiom,
    ! [A: int,X2: num,N: nat] :
      ( ( ord_le6747313008572928689nteger @ ( ring_18347121197199848620nteger @ A ) @ ( power_8256067586552552935nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ X2 ) ) @ N ) )
      = ( ord_less_int @ A @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) ) ) ).

% of_int_less_neg_numeral_power_cancel_iff
thf(fact_4200_of__int__less__neg__numeral__power__cancel__iff,axiom,
    ! [A: int,X2: num,N: nat] :
      ( ( ord_less_rat @ ( ring_1_of_int_rat @ A ) @ ( power_power_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ X2 ) ) @ N ) )
      = ( ord_less_int @ A @ ( power_power_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ X2 ) ) @ N ) ) ) ).

% of_int_less_neg_numeral_power_cancel_iff
thf(fact_4201_zmod__int,axiom,
    ! [A: nat,B: nat] :
      ( ( semiri1314217659103216013at_int @ ( modulo_modulo_nat @ A @ B ) )
      = ( modulo_modulo_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) ).

% zmod_int
thf(fact_4202_nat__numeral__as__int,axiom,
    ( numeral_numeral_nat
    = ( ^ [I2: num] : ( nat2 @ ( numeral_numeral_int @ I2 ) ) ) ) ).

% nat_numeral_as_int
thf(fact_4203_int__ops_I3_J,axiom,
    ! [N: num] :
      ( ( semiri1314217659103216013at_int @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_int @ N ) ) ).

% int_ops(3)
thf(fact_4204_of__nat__mod,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri1314217659103216013at_int @ ( modulo_modulo_nat @ M @ N ) )
      = ( modulo_modulo_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) ) ).

% of_nat_mod
thf(fact_4205_of__nat__mod,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri1316708129612266289at_nat @ ( modulo_modulo_nat @ M @ N ) )
      = ( modulo_modulo_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) ) ) ).

% of_nat_mod
thf(fact_4206_of__nat__mod,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri4939895301339042750nteger @ ( modulo_modulo_nat @ M @ N ) )
      = ( modulo364778990260209775nteger @ ( semiri4939895301339042750nteger @ M ) @ ( semiri4939895301339042750nteger @ N ) ) ) ).

% of_nat_mod
thf(fact_4207_of__nat__mod,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri3763490453095760265atural @ ( modulo_modulo_nat @ M @ N ) )
      = ( modulo8411746178871703098atural @ ( semiri3763490453095760265atural @ M ) @ ( semiri3763490453095760265atural @ N ) ) ) ).

% of_nat_mod
thf(fact_4208_mod__add__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ ( modulo_modulo_int @ A @ C ) @ ( modulo_modulo_int @ B @ C ) ) @ C )
      = ( modulo_modulo_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% mod_add_eq
thf(fact_4209_mod__add__eq,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ ( modulo_modulo_nat @ A @ C ) @ ( modulo_modulo_nat @ B @ C ) ) @ C )
      = ( modulo_modulo_nat @ ( plus_plus_nat @ A @ B ) @ C ) ) ).

% mod_add_eq
thf(fact_4210_mod__add__eq,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ A @ C ) @ ( modulo364778990260209775nteger @ B @ C ) ) @ C )
      = ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C ) ) ).

% mod_add_eq
thf(fact_4211_mod__add__eq,axiom,
    ! [A: code_natural,C: code_natural,B: code_natural] :
      ( ( modulo8411746178871703098atural @ ( plus_p4538020629002901425atural @ ( modulo8411746178871703098atural @ A @ C ) @ ( modulo8411746178871703098atural @ B @ C ) ) @ C )
      = ( modulo8411746178871703098atural @ ( plus_p4538020629002901425atural @ A @ B ) @ C ) ) ).

% mod_add_eq
thf(fact_4212_mod__add__cong,axiom,
    ! [A: int,C: int,A5: int,B: int,B5: int] :
      ( ( ( modulo_modulo_int @ A @ C )
        = ( modulo_modulo_int @ A5 @ C ) )
     => ( ( ( modulo_modulo_int @ B @ C )
          = ( modulo_modulo_int @ B5 @ C ) )
       => ( ( modulo_modulo_int @ ( plus_plus_int @ A @ B ) @ C )
          = ( modulo_modulo_int @ ( plus_plus_int @ A5 @ B5 ) @ C ) ) ) ) ).

% mod_add_cong
thf(fact_4213_mod__add__cong,axiom,
    ! [A: nat,C: nat,A5: nat,B: nat,B5: nat] :
      ( ( ( modulo_modulo_nat @ A @ C )
        = ( modulo_modulo_nat @ A5 @ C ) )
     => ( ( ( modulo_modulo_nat @ B @ C )
          = ( modulo_modulo_nat @ B5 @ C ) )
       => ( ( modulo_modulo_nat @ ( plus_plus_nat @ A @ B ) @ C )
          = ( modulo_modulo_nat @ ( plus_plus_nat @ A5 @ B5 ) @ C ) ) ) ) ).

% mod_add_cong
thf(fact_4214_mod__add__cong,axiom,
    ! [A: code_integer,C: code_integer,A5: code_integer,B: code_integer,B5: code_integer] :
      ( ( ( modulo364778990260209775nteger @ A @ C )
        = ( modulo364778990260209775nteger @ A5 @ C ) )
     => ( ( ( modulo364778990260209775nteger @ B @ C )
          = ( modulo364778990260209775nteger @ B5 @ C ) )
       => ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
          = ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A5 @ B5 ) @ C ) ) ) ) ).

% mod_add_cong
thf(fact_4215_mod__add__cong,axiom,
    ! [A: code_natural,C: code_natural,A5: code_natural,B: code_natural,B5: code_natural] :
      ( ( ( modulo8411746178871703098atural @ A @ C )
        = ( modulo8411746178871703098atural @ A5 @ C ) )
     => ( ( ( modulo8411746178871703098atural @ B @ C )
          = ( modulo8411746178871703098atural @ B5 @ C ) )
       => ( ( modulo8411746178871703098atural @ ( plus_p4538020629002901425atural @ A @ B ) @ C )
          = ( modulo8411746178871703098atural @ ( plus_p4538020629002901425atural @ A5 @ B5 ) @ C ) ) ) ) ).

% mod_add_cong
thf(fact_4216_mod__add__left__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ ( modulo_modulo_int @ A @ C ) @ B ) @ C )
      = ( modulo_modulo_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% mod_add_left_eq
thf(fact_4217_mod__add__left__eq,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ ( modulo_modulo_nat @ A @ C ) @ B ) @ C )
      = ( modulo_modulo_nat @ ( plus_plus_nat @ A @ B ) @ C ) ) ).

% mod_add_left_eq
thf(fact_4218_mod__add__left__eq,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ A @ C ) @ B ) @ C )
      = ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C ) ) ).

% mod_add_left_eq
thf(fact_4219_mod__add__left__eq,axiom,
    ! [A: code_natural,C: code_natural,B: code_natural] :
      ( ( modulo8411746178871703098atural @ ( plus_p4538020629002901425atural @ ( modulo8411746178871703098atural @ A @ C ) @ B ) @ C )
      = ( modulo8411746178871703098atural @ ( plus_p4538020629002901425atural @ A @ B ) @ C ) ) ).

% mod_add_left_eq
thf(fact_4220_mod__add__right__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( modulo_modulo_int @ ( plus_plus_int @ A @ ( modulo_modulo_int @ B @ C ) ) @ C )
      = ( modulo_modulo_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% mod_add_right_eq
thf(fact_4221_mod__add__right__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ A @ ( modulo_modulo_nat @ B @ C ) ) @ C )
      = ( modulo_modulo_nat @ ( plus_plus_nat @ A @ B ) @ C ) ) ).

% mod_add_right_eq
thf(fact_4222_mod__add__right__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ ( modulo364778990260209775nteger @ B @ C ) ) @ C )
      = ( modulo364778990260209775nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C ) ) ).

% mod_add_right_eq
thf(fact_4223_mod__add__right__eq,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( modulo8411746178871703098atural @ ( plus_p4538020629002901425atural @ A @ ( modulo8411746178871703098atural @ B @ C ) ) @ C )
      = ( modulo8411746178871703098atural @ ( plus_p4538020629002901425atural @ A @ B ) @ C ) ) ).

% mod_add_right_eq
thf(fact_4224_zero__neq__numeral,axiom,
    ! [N: num] :
      ( zero_zero_int
     != ( numeral_numeral_int @ N ) ) ).

% zero_neq_numeral
thf(fact_4225_zero__neq__numeral,axiom,
    ! [N: num] :
      ( zero_zero_nat
     != ( numeral_numeral_nat @ N ) ) ).

% zero_neq_numeral
thf(fact_4226_zero__neq__numeral,axiom,
    ! [N: num] :
      ( zero_z3403309356797280102nteger
     != ( numera6620942414471956472nteger @ N ) ) ).

% zero_neq_numeral
thf(fact_4227_zero__neq__numeral,axiom,
    ! [N: num] :
      ( zero_zero_rat
     != ( numeral_numeral_rat @ N ) ) ).

% zero_neq_numeral
thf(fact_4228_zero__neq__numeral,axiom,
    ! [N: num] :
      ( zero_z2226904508553997617atural
     != ( numera5444537566228673987atural @ N ) ) ).

% zero_neq_numeral
thf(fact_4229_mod__less__eq__dividend,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( modulo_modulo_nat @ M @ N ) @ M ) ).

% mod_less_eq_dividend
thf(fact_4230_neg__numeral__neq__numeral,axiom,
    ! [M: num,N: num] :
      ( ( uminus_uminus_int @ ( numeral_numeral_int @ M ) )
     != ( numeral_numeral_int @ N ) ) ).

% neg_numeral_neq_numeral
thf(fact_4231_neg__numeral__neq__numeral,axiom,
    ! [M: num,N: num] :
      ( ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) )
     != ( numera6620942414471956472nteger @ N ) ) ).

% neg_numeral_neq_numeral
thf(fact_4232_neg__numeral__neq__numeral,axiom,
    ! [M: num,N: num] :
      ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) )
     != ( numeral_numeral_rat @ N ) ) ).

% neg_numeral_neq_numeral
thf(fact_4233_numeral__neq__neg__numeral,axiom,
    ! [M: num,N: num] :
      ( ( numeral_numeral_int @ M )
     != ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ).

% numeral_neq_neg_numeral
thf(fact_4234_numeral__neq__neg__numeral,axiom,
    ! [M: num,N: num] :
      ( ( numera6620942414471956472nteger @ M )
     != ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) ) ).

% numeral_neq_neg_numeral
thf(fact_4235_numeral__neq__neg__numeral,axiom,
    ! [M: num,N: num] :
      ( ( numeral_numeral_rat @ M )
     != ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) ) ).

% numeral_neq_neg_numeral
thf(fact_4236_nat__mod__as__int,axiom,
    ( modulo_modulo_nat
    = ( ^ [A2: nat,B2: nat] : ( nat2 @ ( modulo_modulo_int @ ( semiri1314217659103216013at_int @ A2 ) @ ( semiri1314217659103216013at_int @ B2 ) ) ) ) ) ).

% nat_mod_as_int
thf(fact_4237_Ints__numeral,axiom,
    ! [N: num] : ( member_int @ ( numeral_numeral_int @ N ) @ ring_1_Ints_int ) ).

% Ints_numeral
thf(fact_4238_Ints__numeral,axiom,
    ! [N: num] : ( member_Code_integer @ ( numera6620942414471956472nteger @ N ) @ ring_11222124179247155820nteger ) ).

% Ints_numeral
thf(fact_4239_Ints__numeral,axiom,
    ! [N: num] : ( member_rat @ ( numeral_numeral_rat @ N ) @ ring_1_Ints_rat ) ).

% Ints_numeral
thf(fact_4240_nat__mod__distrib,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X2 )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y )
       => ( ( nat2 @ ( modulo_modulo_int @ X2 @ Y ) )
          = ( modulo_modulo_nat @ ( nat2 @ X2 ) @ ( nat2 @ Y ) ) ) ) ) ).

% nat_mod_distrib
thf(fact_4241_mod__abs__eq__div__nat,axiom,
    ! [K: int,L: int] :
      ( ( modulo_modulo_int @ ( abs_abs_int @ K ) @ ( abs_abs_int @ L ) )
      = ( semiri1314217659103216013at_int @ ( modulo_modulo_nat @ ( nat2 @ ( abs_abs_int @ K ) ) @ ( nat2 @ ( abs_abs_int @ L ) ) ) ) ) ).

% mod_abs_eq_div_nat
thf(fact_4242_of__int__neg__numeral,axiom,
    ! [K: num] :
      ( ( ring_1_of_int_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) ) ).

% of_int_neg_numeral
thf(fact_4243_of__int__neg__numeral,axiom,
    ! [K: num] :
      ( ( ring_18347121197199848620nteger @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) )
      = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ K ) ) ) ).

% of_int_neg_numeral
thf(fact_4244_of__int__neg__numeral,axiom,
    ! [K: num] :
      ( ( ring_1_of_int_rat @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) )
      = ( uminus_uminus_rat @ ( numeral_numeral_rat @ K ) ) ) ).

% of_int_neg_numeral
thf(fact_4245_unique__euclidean__semiring__numeral__class_Omod__less__eq__dividend,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ord_le3102999989581377725nteger @ ( modulo364778990260209775nteger @ A @ B ) @ A ) ) ).

% unique_euclidean_semiring_numeral_class.mod_less_eq_dividend
thf(fact_4246_unique__euclidean__semiring__numeral__class_Omod__less__eq__dividend,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ord_less_eq_nat @ ( modulo_modulo_nat @ A @ B ) @ A ) ) ).

% unique_euclidean_semiring_numeral_class.mod_less_eq_dividend
thf(fact_4247_unique__euclidean__semiring__numeral__class_Omod__less__eq__dividend,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ord_less_eq_int @ ( modulo_modulo_int @ A @ B ) @ A ) ) ).

% unique_euclidean_semiring_numeral_class.mod_less_eq_dividend
thf(fact_4248_unique__euclidean__semiring__numeral__class_Opos__mod__bound,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ord_less_int @ ( modulo_modulo_int @ A @ B ) @ B ) ) ).

% unique_euclidean_semiring_numeral_class.pos_mod_bound
thf(fact_4249_unique__euclidean__semiring__numeral__class_Opos__mod__bound,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ B )
     => ( ord_less_nat @ ( modulo_modulo_nat @ A @ B ) @ B ) ) ).

% unique_euclidean_semiring_numeral_class.pos_mod_bound
thf(fact_4250_unique__euclidean__semiring__numeral__class_Opos__mod__bound,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
     => ( ord_le6747313008572928689nteger @ ( modulo364778990260209775nteger @ A @ B ) @ B ) ) ).

% unique_euclidean_semiring_numeral_class.pos_mod_bound
thf(fact_4251_mod__eqE,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ( modulo_modulo_int @ A @ C )
        = ( modulo_modulo_int @ B @ C ) )
     => ~ ! [D5: int] :
            ( B
           != ( plus_plus_int @ A @ ( times_times_int @ C @ D5 ) ) ) ) ).

% mod_eqE
thf(fact_4252_mod__eqE,axiom,
    ! [A: code_integer,C: code_integer,B: code_integer] :
      ( ( ( modulo364778990260209775nteger @ A @ C )
        = ( modulo364778990260209775nteger @ B @ C ) )
     => ~ ! [D5: code_integer] :
            ( B
           != ( plus_p5714425477246183910nteger @ A @ ( times_3573771949741848930nteger @ C @ D5 ) ) ) ) ).

% mod_eqE
thf(fact_4253_mod__eq__self__iff__div__eq__0,axiom,
    ! [A: int,B: int] :
      ( ( ( modulo_modulo_int @ A @ B )
        = A )
      = ( ( divide_divide_int @ A @ B )
        = zero_zero_int ) ) ).

% mod_eq_self_iff_div_eq_0
thf(fact_4254_mod__eq__self__iff__div__eq__0,axiom,
    ! [A: nat,B: nat] :
      ( ( ( modulo_modulo_nat @ A @ B )
        = A )
      = ( ( divide_divide_nat @ A @ B )
        = zero_zero_nat ) ) ).

% mod_eq_self_iff_div_eq_0
thf(fact_4255_mod__eq__self__iff__div__eq__0,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ( modulo364778990260209775nteger @ A @ B )
        = A )
      = ( ( divide6298287555418463151nteger @ A @ B )
        = zero_z3403309356797280102nteger ) ) ).

% mod_eq_self_iff_div_eq_0
thf(fact_4256_mod__eq__self__iff__div__eq__0,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( ( modulo8411746178871703098atural @ A @ B )
        = A )
      = ( ( divide5121882707175180666atural @ A @ B )
        = zero_z2226904508553997617atural ) ) ).

% mod_eq_self_iff_div_eq_0
thf(fact_4257_div__add1__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( divide_divide_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ ( plus_plus_int @ ( divide_divide_int @ A @ C ) @ ( divide_divide_int @ B @ C ) ) @ ( divide_divide_int @ ( plus_plus_int @ ( modulo_modulo_int @ A @ C ) @ ( modulo_modulo_int @ B @ C ) ) @ C ) ) ) ).

% div_add1_eq
thf(fact_4258_div__add1__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( divide_divide_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ ( plus_plus_nat @ ( divide_divide_nat @ A @ C ) @ ( divide_divide_nat @ B @ C ) ) @ ( divide_divide_nat @ ( plus_plus_nat @ ( modulo_modulo_nat @ A @ C ) @ ( modulo_modulo_nat @ B @ C ) ) @ C ) ) ) ).

% div_add1_eq
thf(fact_4259_div__add1__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ A @ B ) @ C )
      = ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ ( divide6298287555418463151nteger @ A @ C ) @ ( divide6298287555418463151nteger @ B @ C ) ) @ ( divide6298287555418463151nteger @ ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ A @ C ) @ ( modulo364778990260209775nteger @ B @ C ) ) @ C ) ) ) ).

% div_add1_eq
thf(fact_4260_div__add1__eq,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ A @ B ) @ C )
      = ( plus_p4538020629002901425atural @ ( plus_p4538020629002901425atural @ ( divide5121882707175180666atural @ A @ C ) @ ( divide5121882707175180666atural @ B @ C ) ) @ ( divide5121882707175180666atural @ ( plus_p4538020629002901425atural @ ( modulo8411746178871703098atural @ A @ C ) @ ( modulo8411746178871703098atural @ B @ C ) ) @ C ) ) ) ).

% div_add1_eq
thf(fact_4261_nth__rotate1,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
     => ( ( nth_nat @ ( rotate1_nat @ Xs ) @ N )
        = ( nth_nat @ Xs @ ( modulo_modulo_nat @ ( suc @ N ) @ ( size_size_list_nat @ Xs ) ) ) ) ) ).

% nth_rotate1
thf(fact_4262_nth__rotate1,axiom,
    ! [N: nat,Xs: list_int] :
      ( ( ord_less_nat @ N @ ( size_size_list_int @ Xs ) )
     => ( ( nth_int @ ( rotate1_int @ Xs ) @ N )
        = ( nth_int @ Xs @ ( modulo_modulo_nat @ ( suc @ N ) @ ( size_size_list_int @ Xs ) ) ) ) ) ).

% nth_rotate1
thf(fact_4263_nth__rotate1,axiom,
    ! [N: nat,Xs: list_o] :
      ( ( ord_less_nat @ N @ ( size_size_list_o @ Xs ) )
     => ( ( nth_o @ ( rotate1_o @ Xs ) @ N )
        = ( nth_o @ Xs @ ( modulo_modulo_nat @ ( suc @ N ) @ ( size_size_list_o @ Xs ) ) ) ) ) ).

% nth_rotate1
thf(fact_4264_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y3: list_nat,Z: list_nat] : Y3 = Z )
    = ( ^ [Xs3: list_nat,Ys3: list_nat] :
          ( ( ( size_size_list_nat @ Xs3 )
            = ( size_size_list_nat @ Ys3 ) )
          & ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs3 ) )
             => ( ( nth_nat @ Xs3 @ I2 )
                = ( nth_nat @ Ys3 @ I2 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_4265_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y3: list_int,Z: list_int] : Y3 = Z )
    = ( ^ [Xs3: list_int,Ys3: list_int] :
          ( ( ( size_size_list_int @ Xs3 )
            = ( size_size_list_int @ Ys3 ) )
          & ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_size_list_int @ Xs3 ) )
             => ( ( nth_int @ Xs3 @ I2 )
                = ( nth_int @ Ys3 @ I2 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_4266_list__eq__iff__nth__eq,axiom,
    ( ( ^ [Y3: list_o,Z: list_o] : Y3 = Z )
    = ( ^ [Xs3: list_o,Ys3: list_o] :
          ( ( ( size_size_list_o @ Xs3 )
            = ( size_size_list_o @ Ys3 ) )
          & ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ ( size_size_list_o @ Xs3 ) )
             => ( ( nth_o @ Xs3 @ I2 )
                = ( nth_o @ Ys3 @ I2 ) ) ) ) ) ) ).

% list_eq_iff_nth_eq
thf(fact_4267_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > nat > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ K )
           => ? [X5: nat] : ( P @ I2 @ X5 ) ) )
      = ( ? [Xs3: list_nat] :
            ( ( ( size_size_list_nat @ Xs3 )
              = K )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ K )
               => ( P @ I2 @ ( nth_nat @ Xs3 @ I2 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_4268_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > int > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ K )
           => ? [X5: int] : ( P @ I2 @ X5 ) ) )
      = ( ? [Xs3: list_int] :
            ( ( ( size_size_list_int @ Xs3 )
              = K )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ K )
               => ( P @ I2 @ ( nth_int @ Xs3 @ I2 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_4269_Skolem__list__nth,axiom,
    ! [K: nat,P: nat > $o > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ K )
           => ? [X5: $o] : ( P @ I2 @ X5 ) ) )
      = ( ? [Xs3: list_o] :
            ( ( ( size_size_list_o @ Xs3 )
              = K )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ K )
               => ( P @ I2 @ ( nth_o @ Xs3 @ I2 ) ) ) ) ) ) ).

% Skolem_list_nth
thf(fact_4270_nth__equalityI,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_nat @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs ) )
           => ( ( nth_nat @ Xs @ I3 )
              = ( nth_nat @ Ys @ I3 ) ) )
       => ( Xs = Ys ) ) ) ).

% nth_equalityI
thf(fact_4271_nth__equalityI,axiom,
    ! [Xs: list_int,Ys: list_int] :
      ( ( ( size_size_list_int @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_int @ Xs ) )
           => ( ( nth_int @ Xs @ I3 )
              = ( nth_int @ Ys @ I3 ) ) )
       => ( Xs = Ys ) ) ) ).

% nth_equalityI
thf(fact_4272_nth__equalityI,axiom,
    ! [Xs: list_o,Ys: list_o] :
      ( ( ( size_size_list_o @ Xs )
        = ( size_size_list_o @ Ys ) )
     => ( ! [I3: nat] :
            ( ( ord_less_nat @ I3 @ ( size_size_list_o @ Xs ) )
           => ( ( nth_o @ Xs @ I3 )
              = ( nth_o @ Ys @ I3 ) ) )
       => ( Xs = Ys ) ) ) ).

% nth_equalityI
thf(fact_4273_obtain__list__from__elements,axiom,
    ! [N: nat,P: nat > nat > $o] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ N )
         => ? [Li: nat] : ( P @ Li @ I3 ) )
     => ~ ! [L3: list_nat] :
            ( ( ( size_size_list_nat @ L3 )
              = N )
           => ~ ! [I4: nat] :
                  ( ( ord_less_nat @ I4 @ N )
                 => ( P @ ( nth_nat @ L3 @ I4 ) @ I4 ) ) ) ) ).

% obtain_list_from_elements
thf(fact_4274_obtain__list__from__elements,axiom,
    ! [N: nat,P: int > nat > $o] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ N )
         => ? [Li: int] : ( P @ Li @ I3 ) )
     => ~ ! [L3: list_int] :
            ( ( ( size_size_list_int @ L3 )
              = N )
           => ~ ! [I4: nat] :
                  ( ( ord_less_nat @ I4 @ N )
                 => ( P @ ( nth_int @ L3 @ I4 ) @ I4 ) ) ) ) ).

% obtain_list_from_elements
thf(fact_4275_obtain__list__from__elements,axiom,
    ! [N: nat,P: $o > nat > $o] :
      ( ! [I3: nat] :
          ( ( ord_less_nat @ I3 @ N )
         => ? [Li: $o] : ( P @ Li @ I3 ) )
     => ~ ! [L3: list_o] :
            ( ( ( size_size_list_o @ L3 )
              = N )
           => ~ ! [I4: nat] :
                  ( ( ord_less_nat @ I4 @ N )
                 => ( P @ ( nth_o @ L3 @ I4 ) @ I4 ) ) ) ) ).

% obtain_list_from_elements
thf(fact_4276_mod__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( ( ( suc @ ( modulo_modulo_nat @ M @ N ) )
          = N )
       => ( ( modulo_modulo_nat @ ( suc @ M ) @ N )
          = zero_zero_nat ) )
      & ( ( ( suc @ ( modulo_modulo_nat @ M @ N ) )
         != N )
       => ( ( modulo_modulo_nat @ ( suc @ M ) @ N )
          = ( suc @ ( modulo_modulo_nat @ M @ N ) ) ) ) ) ).

% mod_Suc
thf(fact_4277_mod__less__divisor,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ ( modulo_modulo_nat @ M @ N ) @ N ) ) ).

% mod_less_divisor
thf(fact_4278_gcd__nat__induct,axiom,
    ! [P: nat > nat > $o,M: nat,N: nat] :
      ( ! [M4: nat] : ( P @ M4 @ zero_zero_nat )
     => ( ! [M4: nat,N2: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N2 )
           => ( ( P @ N2 @ ( modulo_modulo_nat @ M4 @ N2 ) )
             => ( P @ M4 @ N2 ) ) )
       => ( P @ M @ N ) ) ) ).

% gcd_nat_induct
thf(fact_4279_zero__le__numeral,axiom,
    ! [N: num] : ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( numera6620942414471956472nteger @ N ) ) ).

% zero_le_numeral
thf(fact_4280_zero__le__numeral,axiom,
    ! [N: num] : ( ord_le1926595141338095240atural @ zero_z2226904508553997617atural @ ( numera5444537566228673987atural @ N ) ) ).

% zero_le_numeral
thf(fact_4281_zero__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_rat @ zero_zero_rat @ ( numeral_numeral_rat @ N ) ) ).

% zero_le_numeral
thf(fact_4282_zero__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_nat @ zero_zero_nat @ ( numeral_numeral_nat @ N ) ) ).

% zero_le_numeral
thf(fact_4283_zero__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_int @ zero_zero_int @ ( numeral_numeral_int @ N ) ) ).

% zero_le_numeral
thf(fact_4284_not__numeral__le__zero,axiom,
    ! [N: num] :
      ~ ( ord_le3102999989581377725nteger @ ( numera6620942414471956472nteger @ N ) @ zero_z3403309356797280102nteger ) ).

% not_numeral_le_zero
thf(fact_4285_not__numeral__le__zero,axiom,
    ! [N: num] :
      ~ ( ord_le1926595141338095240atural @ ( numera5444537566228673987atural @ N ) @ zero_z2226904508553997617atural ) ).

% not_numeral_le_zero
thf(fact_4286_not__numeral__le__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_eq_rat @ ( numeral_numeral_rat @ N ) @ zero_zero_rat ) ).

% not_numeral_le_zero
thf(fact_4287_not__numeral__le__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_eq_nat @ ( numeral_numeral_nat @ N ) @ zero_zero_nat ) ).

% not_numeral_le_zero
thf(fact_4288_not__numeral__le__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_eq_int @ ( numeral_numeral_int @ N ) @ zero_zero_int ) ).

% not_numeral_le_zero
thf(fact_4289_mod__Suc__le__divisor,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( modulo_modulo_nat @ M @ ( suc @ N ) ) @ N ) ).

% mod_Suc_le_divisor
thf(fact_4290_zero__less__numeral,axiom,
    ! [N: num] : ( ord_less_int @ zero_zero_int @ ( numeral_numeral_int @ N ) ) ).

% zero_less_numeral
thf(fact_4291_zero__less__numeral,axiom,
    ! [N: num] : ( ord_less_nat @ zero_zero_nat @ ( numeral_numeral_nat @ N ) ) ).

% zero_less_numeral
thf(fact_4292_zero__less__numeral,axiom,
    ! [N: num] : ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( numera6620942414471956472nteger @ N ) ) ).

% zero_less_numeral
thf(fact_4293_zero__less__numeral,axiom,
    ! [N: num] : ( ord_less_rat @ zero_zero_rat @ ( numeral_numeral_rat @ N ) ) ).

% zero_less_numeral
thf(fact_4294_zero__less__numeral,axiom,
    ! [N: num] : ( ord_le5570908160329646204atural @ zero_z2226904508553997617atural @ ( numera5444537566228673987atural @ N ) ) ).

% zero_less_numeral
thf(fact_4295_not__numeral__less__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_int @ ( numeral_numeral_int @ N ) @ zero_zero_int ) ).

% not_numeral_less_zero
thf(fact_4296_not__numeral__less__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_nat @ ( numeral_numeral_nat @ N ) @ zero_zero_nat ) ).

% not_numeral_less_zero
thf(fact_4297_not__numeral__less__zero,axiom,
    ! [N: num] :
      ~ ( ord_le6747313008572928689nteger @ ( numera6620942414471956472nteger @ N ) @ zero_z3403309356797280102nteger ) ).

% not_numeral_less_zero
thf(fact_4298_not__numeral__less__zero,axiom,
    ! [N: num] :
      ~ ( ord_less_rat @ ( numeral_numeral_rat @ N ) @ zero_zero_rat ) ).

% not_numeral_less_zero
thf(fact_4299_not__numeral__less__zero,axiom,
    ! [N: num] :
      ~ ( ord_le5570908160329646204atural @ ( numera5444537566228673987atural @ N ) @ zero_z2226904508553997617atural ) ).

% not_numeral_less_zero
thf(fact_4300_one__le__numeral,axiom,
    ! [N: num] : ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ N ) ) ).

% one_le_numeral
thf(fact_4301_one__le__numeral,axiom,
    ! [N: num] : ( ord_le1926595141338095240atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ N ) ) ).

% one_le_numeral
thf(fact_4302_one__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_rat @ one_one_rat @ ( numeral_numeral_rat @ N ) ) ).

% one_le_numeral
thf(fact_4303_one__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) ) ).

% one_le_numeral
thf(fact_4304_one__le__numeral,axiom,
    ! [N: num] : ( ord_less_eq_int @ one_one_int @ ( numeral_numeral_int @ N ) ) ).

% one_le_numeral
thf(fact_4305_nat__power__less__imp__less,axiom,
    ! [I: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ I )
     => ( ( ord_less_nat @ ( power_power_nat @ I @ M ) @ ( power_power_nat @ I @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% nat_power_less_imp_less
thf(fact_4306_mod__eq__0D,axiom,
    ! [M: nat,D: nat] :
      ( ( ( modulo_modulo_nat @ M @ D )
        = zero_zero_nat )
     => ? [Q4: nat] :
          ( M
          = ( times_times_nat @ D @ Q4 ) ) ) ).

% mod_eq_0D
thf(fact_4307_zmod__le__nonneg__dividend,axiom,
    ! [M: int,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ M )
     => ( ord_less_eq_int @ ( modulo_modulo_int @ M @ K ) @ M ) ) ).

% zmod_le_nonneg_dividend
thf(fact_4308_Euclidean__Division_Opos__mod__bound,axiom,
    ! [L: int,K: int] :
      ( ( ord_less_int @ zero_zero_int @ L )
     => ( ord_less_int @ ( modulo_modulo_int @ K @ L ) @ L ) ) ).

% Euclidean_Division.pos_mod_bound
thf(fact_4309_neg__mod__bound,axiom,
    ! [L: int,K: int] :
      ( ( ord_less_int @ L @ zero_zero_int )
     => ( ord_less_int @ L @ ( modulo_modulo_int @ K @ L ) ) ) ).

% neg_mod_bound
thf(fact_4310_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_int @ ( numeral_numeral_int @ N ) @ one_one_int ) ).

% not_numeral_less_one
thf(fact_4311_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_nat @ ( numeral_numeral_nat @ N ) @ one_one_nat ) ).

% not_numeral_less_one
thf(fact_4312_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_le6747313008572928689nteger @ ( numera6620942414471956472nteger @ N ) @ one_one_Code_integer ) ).

% not_numeral_less_one
thf(fact_4313_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_rat @ ( numeral_numeral_rat @ N ) @ one_one_rat ) ).

% not_numeral_less_one
thf(fact_4314_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_le5570908160329646204atural @ ( numera5444537566228673987atural @ N ) @ one_one_Code_natural ) ).

% not_numeral_less_one
thf(fact_4315_le__mod__geq,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( modulo_modulo_nat @ M @ N )
        = ( modulo_modulo_nat @ ( minus_minus_nat @ M @ N ) @ N ) ) ) ).

% le_mod_geq
thf(fact_4316_not__numeral__le__neg__numeral,axiom,
    ! [M: num,N: num] :
      ~ ( ord_le3102999989581377725nteger @ ( numera6620942414471956472nteger @ M ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) ) ).

% not_numeral_le_neg_numeral
thf(fact_4317_not__numeral__le__neg__numeral,axiom,
    ! [M: num,N: num] :
      ~ ( ord_less_eq_rat @ ( numeral_numeral_rat @ M ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) ) ).

% not_numeral_le_neg_numeral
thf(fact_4318_not__numeral__le__neg__numeral,axiom,
    ! [M: num,N: num] :
      ~ ( ord_less_eq_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ).

% not_numeral_le_neg_numeral
thf(fact_4319_neg__numeral__le__numeral,axiom,
    ! [M: num,N: num] : ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( numera6620942414471956472nteger @ N ) ) ).

% neg_numeral_le_numeral
thf(fact_4320_neg__numeral__le__numeral,axiom,
    ! [M: num,N: num] : ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( numeral_numeral_rat @ N ) ) ).

% neg_numeral_le_numeral
thf(fact_4321_neg__numeral__le__numeral,axiom,
    ! [M: num,N: num] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) ) ).

% neg_numeral_le_numeral
thf(fact_4322_zero__neq__neg__numeral,axiom,
    ! [N: num] :
      ( zero_zero_int
     != ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ).

% zero_neq_neg_numeral
thf(fact_4323_zero__neq__neg__numeral,axiom,
    ! [N: num] :
      ( zero_z3403309356797280102nteger
     != ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) ) ).

% zero_neq_neg_numeral
thf(fact_4324_zero__neq__neg__numeral,axiom,
    ! [N: num] :
      ( zero_zero_rat
     != ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) ) ).

% zero_neq_neg_numeral
thf(fact_4325_one__plus__numeral__commute,axiom,
    ! [X2: num] :
      ( ( plus_plus_int @ one_one_int @ ( numeral_numeral_int @ X2 ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ X2 ) @ one_one_int ) ) ).

% one_plus_numeral_commute
thf(fact_4326_one__plus__numeral__commute,axiom,
    ! [X2: num] :
      ( ( plus_plus_nat @ one_one_nat @ ( numeral_numeral_nat @ X2 ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ X2 ) @ one_one_nat ) ) ).

% one_plus_numeral_commute
thf(fact_4327_one__plus__numeral__commute,axiom,
    ! [X2: num] :
      ( ( plus_p5714425477246183910nteger @ one_one_Code_integer @ ( numera6620942414471956472nteger @ X2 ) )
      = ( plus_p5714425477246183910nteger @ ( numera6620942414471956472nteger @ X2 ) @ one_one_Code_integer ) ) ).

% one_plus_numeral_commute
thf(fact_4328_one__plus__numeral__commute,axiom,
    ! [X2: num] :
      ( ( plus_plus_rat @ one_one_rat @ ( numeral_numeral_rat @ X2 ) )
      = ( plus_plus_rat @ ( numeral_numeral_rat @ X2 ) @ one_one_rat ) ) ).

% one_plus_numeral_commute
thf(fact_4329_one__plus__numeral__commute,axiom,
    ! [X2: num] :
      ( ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( numera5444537566228673987atural @ X2 ) )
      = ( plus_p4538020629002901425atural @ ( numera5444537566228673987atural @ X2 ) @ one_one_Code_natural ) ) ).

% one_plus_numeral_commute
thf(fact_4330_zmod__eq__0D,axiom,
    ! [M: int,D: int] :
      ( ( ( modulo_modulo_int @ M @ D )
        = zero_zero_int )
     => ? [Q4: int] :
          ( M
          = ( times_times_int @ D @ Q4 ) ) ) ).

% zmod_eq_0D
thf(fact_4331_zmod__eq__0__iff,axiom,
    ! [M: int,D: int] :
      ( ( ( modulo_modulo_int @ M @ D )
        = zero_zero_int )
      = ( ? [Q6: int] :
            ( M
            = ( times_times_int @ D @ Q6 ) ) ) ) ).

% zmod_eq_0_iff
thf(fact_4332_zmod__zminus2__not__zero,axiom,
    ! [K: int,L: int] :
      ( ( ( modulo_modulo_int @ K @ ( uminus_uminus_int @ L ) )
       != zero_zero_int )
     => ( ( modulo_modulo_int @ K @ L )
       != zero_zero_int ) ) ).

% zmod_zminus2_not_zero
thf(fact_4333_zmod__zminus1__not__zero,axiom,
    ! [K: int,L: int] :
      ( ( ( modulo_modulo_int @ ( uminus_uminus_int @ K ) @ L )
       != zero_zero_int )
     => ( ( modulo_modulo_int @ K @ L )
       != zero_zero_int ) ) ).

% zmod_zminus1_not_zero
thf(fact_4334_neg__numeral__less__numeral,axiom,
    ! [M: num,N: num] : ( ord_less_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) ) ).

% neg_numeral_less_numeral
thf(fact_4335_neg__numeral__less__numeral,axiom,
    ! [M: num,N: num] : ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( numera6620942414471956472nteger @ N ) ) ).

% neg_numeral_less_numeral
thf(fact_4336_neg__numeral__less__numeral,axiom,
    ! [M: num,N: num] : ( ord_less_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( numeral_numeral_rat @ N ) ) ).

% neg_numeral_less_numeral
thf(fact_4337_not__numeral__less__neg__numeral,axiom,
    ! [M: num,N: num] :
      ~ ( ord_less_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ).

% not_numeral_less_neg_numeral
thf(fact_4338_not__numeral__less__neg__numeral,axiom,
    ! [M: num,N: num] :
      ~ ( ord_le6747313008572928689nteger @ ( numera6620942414471956472nteger @ M ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) ) ).

% not_numeral_less_neg_numeral
thf(fact_4339_not__numeral__less__neg__numeral,axiom,
    ! [M: num,N: num] :
      ~ ( ord_less_rat @ ( numeral_numeral_rat @ M ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) ) ).

% not_numeral_less_neg_numeral
thf(fact_4340_nat__mod__eq__iff,axiom,
    ! [X2: nat,N: nat,Y: nat] :
      ( ( ( modulo_modulo_nat @ X2 @ N )
        = ( modulo_modulo_nat @ Y @ N ) )
      = ( ? [Q1: nat,Q22: nat] :
            ( ( plus_plus_nat @ X2 @ ( times_times_nat @ N @ Q1 ) )
            = ( plus_plus_nat @ Y @ ( times_times_nat @ N @ Q22 ) ) ) ) ) ).

% nat_mod_eq_iff
thf(fact_4341_numeral__neq__neg__one,axiom,
    ! [N: num] :
      ( ( numeral_numeral_int @ N )
     != ( uminus_uminus_int @ one_one_int ) ) ).

% numeral_neq_neg_one
thf(fact_4342_numeral__neq__neg__one,axiom,
    ! [N: num] :
      ( ( numera6620942414471956472nteger @ N )
     != ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% numeral_neq_neg_one
thf(fact_4343_numeral__neq__neg__one,axiom,
    ! [N: num] :
      ( ( numeral_numeral_rat @ N )
     != ( uminus_uminus_rat @ one_one_rat ) ) ).

% numeral_neq_neg_one
thf(fact_4344_one__neq__neg__numeral,axiom,
    ! [N: num] :
      ( one_one_int
     != ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ).

% one_neq_neg_numeral
thf(fact_4345_one__neq__neg__numeral,axiom,
    ! [N: num] :
      ( one_one_Code_integer
     != ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) ) ).

% one_neq_neg_numeral
thf(fact_4346_one__neq__neg__numeral,axiom,
    ! [N: num] :
      ( one_one_rat
     != ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) ) ).

% one_neq_neg_numeral
thf(fact_4347_unique__euclidean__semiring__numeral__class_Omod__less,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ A )
     => ( ( ord_le6747313008572928689nteger @ A @ B )
       => ( ( modulo364778990260209775nteger @ A @ B )
          = A ) ) ) ).

% unique_euclidean_semiring_numeral_class.mod_less
thf(fact_4348_unique__euclidean__semiring__numeral__class_Omod__less,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ A @ B )
       => ( ( modulo_modulo_nat @ A @ B )
          = A ) ) ) ).

% unique_euclidean_semiring_numeral_class.mod_less
thf(fact_4349_unique__euclidean__semiring__numeral__class_Omod__less,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( ord_less_int @ A @ B )
       => ( ( modulo_modulo_int @ A @ B )
          = A ) ) ) ).

% unique_euclidean_semiring_numeral_class.mod_less
thf(fact_4350_unique__euclidean__semiring__numeral__class_Opos__mod__sign,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ B )
     => ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( modulo364778990260209775nteger @ A @ B ) ) ) ).

% unique_euclidean_semiring_numeral_class.pos_mod_sign
thf(fact_4351_unique__euclidean__semiring__numeral__class_Opos__mod__sign,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ B )
     => ( ord_less_eq_nat @ zero_zero_nat @ ( modulo_modulo_nat @ A @ B ) ) ) ).

% unique_euclidean_semiring_numeral_class.pos_mod_sign
thf(fact_4352_unique__euclidean__semiring__numeral__class_Opos__mod__sign,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ord_less_eq_int @ zero_zero_int @ ( modulo_modulo_int @ A @ B ) ) ) ).

% unique_euclidean_semiring_numeral_class.pos_mod_sign
thf(fact_4353_div__mult1__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( divide_divide_int @ ( times_times_int @ A @ B ) @ C )
      = ( plus_plus_int @ ( times_times_int @ A @ ( divide_divide_int @ B @ C ) ) @ ( divide_divide_int @ ( times_times_int @ A @ ( modulo_modulo_int @ B @ C ) ) @ C ) ) ) ).

% div_mult1_eq
thf(fact_4354_div__mult1__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( divide_divide_nat @ ( times_times_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ ( times_times_nat @ A @ ( divide_divide_nat @ B @ C ) ) @ ( divide_divide_nat @ ( times_times_nat @ A @ ( modulo_modulo_nat @ B @ C ) ) @ C ) ) ) ).

% div_mult1_eq
thf(fact_4355_div__mult1__eq,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ A @ B ) @ C )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ A @ ( divide6298287555418463151nteger @ B @ C ) ) @ ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ A @ ( modulo364778990260209775nteger @ B @ C ) ) @ C ) ) ) ).

% div_mult1_eq
thf(fact_4356_div__mult1__eq,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ A @ B ) @ C )
      = ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ A @ ( divide5121882707175180666atural @ B @ C ) ) @ ( divide5121882707175180666atural @ ( times_2397367101498566445atural @ A @ ( modulo8411746178871703098atural @ B @ C ) ) @ C ) ) ) ).

% div_mult1_eq
thf(fact_4357_cancel__div__mod__rules_I2_J,axiom,
    ! [B: int,A: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ ( times_times_int @ B @ ( divide_divide_int @ A @ B ) ) @ ( modulo_modulo_int @ A @ B ) ) @ C )
      = ( plus_plus_int @ A @ C ) ) ).

% cancel_div_mod_rules(2)
thf(fact_4358_cancel__div__mod__rules_I2_J,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ ( times_times_nat @ B @ ( divide_divide_nat @ A @ B ) ) @ ( modulo_modulo_nat @ A @ B ) ) @ C )
      = ( plus_plus_nat @ A @ C ) ) ).

% cancel_div_mod_rules(2)
thf(fact_4359_cancel__div__mod__rules_I2_J,axiom,
    ! [B: code_integer,A: code_integer,C: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ ( divide6298287555418463151nteger @ A @ B ) ) @ ( modulo364778990260209775nteger @ A @ B ) ) @ C )
      = ( plus_p5714425477246183910nteger @ A @ C ) ) ).

% cancel_div_mod_rules(2)
thf(fact_4360_cancel__div__mod__rules_I2_J,axiom,
    ! [B: code_natural,A: code_natural,C: code_natural] :
      ( ( plus_p4538020629002901425atural @ ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ B @ ( divide5121882707175180666atural @ A @ B ) ) @ ( modulo8411746178871703098atural @ A @ B ) ) @ C )
      = ( plus_p4538020629002901425atural @ A @ C ) ) ).

% cancel_div_mod_rules(2)
thf(fact_4361_cancel__div__mod__rules_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ ( times_times_int @ ( divide_divide_int @ A @ B ) @ B ) @ ( modulo_modulo_int @ A @ B ) ) @ C )
      = ( plus_plus_int @ A @ C ) ) ).

% cancel_div_mod_rules(1)
thf(fact_4362_cancel__div__mod__rules_I1_J,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ ( times_times_nat @ ( divide_divide_nat @ A @ B ) @ B ) @ ( modulo_modulo_nat @ A @ B ) ) @ C )
      = ( plus_plus_nat @ A @ C ) ) ).

% cancel_div_mod_rules(1)
thf(fact_4363_cancel__div__mod__rules_I1_J,axiom,
    ! [A: code_integer,B: code_integer,C: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ A @ B ) @ B ) @ ( modulo364778990260209775nteger @ A @ B ) ) @ C )
      = ( plus_p5714425477246183910nteger @ A @ C ) ) ).

% cancel_div_mod_rules(1)
thf(fact_4364_cancel__div__mod__rules_I1_J,axiom,
    ! [A: code_natural,B: code_natural,C: code_natural] :
      ( ( plus_p4538020629002901425atural @ ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ A @ B ) @ B ) @ ( modulo8411746178871703098atural @ A @ B ) ) @ C )
      = ( plus_p4538020629002901425atural @ A @ C ) ) ).

% cancel_div_mod_rules(1)
thf(fact_4365_mod__div__decomp,axiom,
    ! [A: int,B: int] :
      ( A
      = ( plus_plus_int @ ( times_times_int @ ( divide_divide_int @ A @ B ) @ B ) @ ( modulo_modulo_int @ A @ B ) ) ) ).

% mod_div_decomp
thf(fact_4366_mod__div__decomp,axiom,
    ! [A: nat,B: nat] :
      ( A
      = ( plus_plus_nat @ ( times_times_nat @ ( divide_divide_nat @ A @ B ) @ B ) @ ( modulo_modulo_nat @ A @ B ) ) ) ).

% mod_div_decomp
thf(fact_4367_mod__div__decomp,axiom,
    ! [A: code_integer,B: code_integer] :
      ( A
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ A @ B ) @ B ) @ ( modulo364778990260209775nteger @ A @ B ) ) ) ).

% mod_div_decomp
thf(fact_4368_mod__div__decomp,axiom,
    ! [A: code_natural,B: code_natural] :
      ( A
      = ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ A @ B ) @ B ) @ ( modulo8411746178871703098atural @ A @ B ) ) ) ).

% mod_div_decomp
thf(fact_4369_div__mult__mod__eq,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( times_times_int @ ( divide_divide_int @ A @ B ) @ B ) @ ( modulo_modulo_int @ A @ B ) )
      = A ) ).

% div_mult_mod_eq
thf(fact_4370_div__mult__mod__eq,axiom,
    ! [A: nat,B: nat] :
      ( ( plus_plus_nat @ ( times_times_nat @ ( divide_divide_nat @ A @ B ) @ B ) @ ( modulo_modulo_nat @ A @ B ) )
      = A ) ).

% div_mult_mod_eq
thf(fact_4371_div__mult__mod__eq,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ A @ B ) @ B ) @ ( modulo364778990260209775nteger @ A @ B ) )
      = A ) ).

% div_mult_mod_eq
thf(fact_4372_div__mult__mod__eq,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ A @ B ) @ B ) @ ( modulo8411746178871703098atural @ A @ B ) )
      = A ) ).

% div_mult_mod_eq
thf(fact_4373_mod__div__mult__eq,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( modulo_modulo_int @ A @ B ) @ ( times_times_int @ ( divide_divide_int @ A @ B ) @ B ) )
      = A ) ).

% mod_div_mult_eq
thf(fact_4374_mod__div__mult__eq,axiom,
    ! [A: nat,B: nat] :
      ( ( plus_plus_nat @ ( modulo_modulo_nat @ A @ B ) @ ( times_times_nat @ ( divide_divide_nat @ A @ B ) @ B ) )
      = A ) ).

% mod_div_mult_eq
thf(fact_4375_mod__div__mult__eq,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ A @ B ) @ ( times_3573771949741848930nteger @ ( divide6298287555418463151nteger @ A @ B ) @ B ) )
      = A ) ).

% mod_div_mult_eq
thf(fact_4376_mod__div__mult__eq,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( plus_p4538020629002901425atural @ ( modulo8411746178871703098atural @ A @ B ) @ ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ A @ B ) @ B ) )
      = A ) ).

% mod_div_mult_eq
thf(fact_4377_mod__mult__div__eq,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( modulo_modulo_int @ A @ B ) @ ( times_times_int @ B @ ( divide_divide_int @ A @ B ) ) )
      = A ) ).

% mod_mult_div_eq
thf(fact_4378_mod__mult__div__eq,axiom,
    ! [A: nat,B: nat] :
      ( ( plus_plus_nat @ ( modulo_modulo_nat @ A @ B ) @ ( times_times_nat @ B @ ( divide_divide_nat @ A @ B ) ) )
      = A ) ).

% mod_mult_div_eq
thf(fact_4379_mod__mult__div__eq,axiom,
    ! [A: code_integer,B: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( modulo364778990260209775nteger @ A @ B ) @ ( times_3573771949741848930nteger @ B @ ( divide6298287555418463151nteger @ A @ B ) ) )
      = A ) ).

% mod_mult_div_eq
thf(fact_4380_mod__mult__div__eq,axiom,
    ! [A: code_natural,B: code_natural] :
      ( ( plus_p4538020629002901425atural @ ( modulo8411746178871703098atural @ A @ B ) @ ( times_2397367101498566445atural @ B @ ( divide5121882707175180666atural @ A @ B ) ) )
      = A ) ).

% mod_mult_div_eq
thf(fact_4381_mult__div__mod__eq,axiom,
    ! [B: int,A: int] :
      ( ( plus_plus_int @ ( times_times_int @ B @ ( divide_divide_int @ A @ B ) ) @ ( modulo_modulo_int @ A @ B ) )
      = A ) ).

% mult_div_mod_eq
thf(fact_4382_mult__div__mod__eq,axiom,
    ! [B: nat,A: nat] :
      ( ( plus_plus_nat @ ( times_times_nat @ B @ ( divide_divide_nat @ A @ B ) ) @ ( modulo_modulo_nat @ A @ B ) )
      = A ) ).

% mult_div_mod_eq
thf(fact_4383_mult__div__mod__eq,axiom,
    ! [B: code_integer,A: code_integer] :
      ( ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ ( divide6298287555418463151nteger @ A @ B ) ) @ ( modulo364778990260209775nteger @ A @ B ) )
      = A ) ).

% mult_div_mod_eq
thf(fact_4384_mult__div__mod__eq,axiom,
    ! [B: code_natural,A: code_natural] :
      ( ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ B @ ( divide5121882707175180666atural @ A @ B ) ) @ ( modulo8411746178871703098atural @ A @ B ) )
      = A ) ).

% mult_div_mod_eq
thf(fact_4385_mod__le__divisor,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_eq_nat @ ( modulo_modulo_nat @ M @ N ) @ N ) ) ).

% mod_le_divisor
thf(fact_4386_fact__mod,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( modulo_modulo_int @ ( semiri1406184849735516958ct_int @ N ) @ ( semiri1406184849735516958ct_int @ M ) )
        = zero_zero_int ) ) ).

% fact_mod
thf(fact_4387_fact__mod,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( modulo364778990260209775nteger @ ( semiri3624122377584611663nteger @ N ) @ ( semiri3624122377584611663nteger @ M ) )
        = zero_z3403309356797280102nteger ) ) ).

% fact_mod
thf(fact_4388_fact__mod,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( modulo8411746178871703098atural @ ( semiri2447717529341329178atural @ N ) @ ( semiri2447717529341329178atural @ M ) )
        = zero_z2226904508553997617atural ) ) ).

% fact_mod
thf(fact_4389_fact__mod,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( modulo_modulo_nat @ ( semiri1408675320244567234ct_nat @ N ) @ ( semiri1408675320244567234ct_nat @ M ) )
        = zero_zero_nat ) ) ).

% fact_mod
thf(fact_4390_neg__numeral__le__zero,axiom,
    ! [N: num] : ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) @ zero_z3403309356797280102nteger ) ).

% neg_numeral_le_zero
thf(fact_4391_neg__numeral__le__zero,axiom,
    ! [N: num] : ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) @ zero_zero_rat ) ).

% neg_numeral_le_zero
thf(fact_4392_neg__numeral__le__zero,axiom,
    ! [N: num] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) @ zero_zero_int ) ).

% neg_numeral_le_zero
thf(fact_4393_not__zero__le__neg__numeral,axiom,
    ! [N: num] :
      ~ ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) ) ).

% not_zero_le_neg_numeral
thf(fact_4394_not__zero__le__neg__numeral,axiom,
    ! [N: num] :
      ~ ( ord_less_eq_rat @ zero_zero_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) ) ).

% not_zero_le_neg_numeral
thf(fact_4395_not__zero__le__neg__numeral,axiom,
    ! [N: num] :
      ~ ( ord_less_eq_int @ zero_zero_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ).

% not_zero_le_neg_numeral
thf(fact_4396_power__gt__expt,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ N )
     => ( ord_less_nat @ K @ ( power_power_nat @ N @ K ) ) ) ).

% power_gt_expt
thf(fact_4397_not__zero__less__neg__numeral,axiom,
    ! [N: num] :
      ~ ( ord_less_int @ zero_zero_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ).

% not_zero_less_neg_numeral
thf(fact_4398_not__zero__less__neg__numeral,axiom,
    ! [N: num] :
      ~ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) ) ).

% not_zero_less_neg_numeral
thf(fact_4399_not__zero__less__neg__numeral,axiom,
    ! [N: num] :
      ~ ( ord_less_rat @ zero_zero_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) ) ).

% not_zero_less_neg_numeral
thf(fact_4400_neg__numeral__less__zero,axiom,
    ! [N: num] : ( ord_less_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) @ zero_zero_int ) ).

% neg_numeral_less_zero
thf(fact_4401_neg__numeral__less__zero,axiom,
    ! [N: num] : ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) @ zero_z3403309356797280102nteger ) ).

% neg_numeral_less_zero
thf(fact_4402_neg__numeral__less__zero,axiom,
    ! [N: num] : ( ord_less_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) @ zero_zero_rat ) ).

% neg_numeral_less_zero
thf(fact_4403_nat__one__le__power,axiom,
    ! [I: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ I )
     => ( ord_less_eq_nat @ ( suc @ zero_zero_nat ) @ ( power_power_nat @ I @ N ) ) ) ).

% nat_one_le_power
thf(fact_4404_not__one__le__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_le3102999989581377725nteger @ one_one_Code_integer @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) ) ).

% not_one_le_neg_numeral
thf(fact_4405_not__one__le__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_eq_rat @ one_one_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) ) ).

% not_one_le_neg_numeral
thf(fact_4406_not__one__le__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_eq_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) ) ).

% not_one_le_neg_numeral
thf(fact_4407_not__numeral__le__neg__one,axiom,
    ! [M: num] :
      ~ ( ord_le3102999989581377725nteger @ ( numera6620942414471956472nteger @ M ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% not_numeral_le_neg_one
thf(fact_4408_not__numeral__le__neg__one,axiom,
    ! [M: num] :
      ~ ( ord_less_eq_rat @ ( numeral_numeral_rat @ M ) @ ( uminus_uminus_rat @ one_one_rat ) ) ).

% not_numeral_le_neg_one
thf(fact_4409_not__numeral__le__neg__one,axiom,
    ! [M: num] :
      ~ ( ord_less_eq_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ one_one_int ) ) ).

% not_numeral_le_neg_one
thf(fact_4410_neg__numeral__le__neg__one,axiom,
    ! [M: num] : ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% neg_numeral_le_neg_one
thf(fact_4411_neg__numeral__le__neg__one,axiom,
    ! [M: num] : ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( uminus_uminus_rat @ one_one_rat ) ) ).

% neg_numeral_le_neg_one
thf(fact_4412_neg__numeral__le__neg__one,axiom,
    ! [M: num] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ one_one_int ) ) ).

% neg_numeral_le_neg_one
thf(fact_4413_neg__one__le__numeral,axiom,
    ! [M: num] : ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( numera6620942414471956472nteger @ M ) ) ).

% neg_one_le_numeral
thf(fact_4414_neg__one__le__numeral,axiom,
    ! [M: num] : ( ord_less_eq_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( numeral_numeral_rat @ M ) ) ).

% neg_one_le_numeral
thf(fact_4415_neg__one__le__numeral,axiom,
    ! [M: num] : ( ord_less_eq_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ M ) ) ).

% neg_one_le_numeral
thf(fact_4416_neg__numeral__le__one,axiom,
    ! [M: num] : ( ord_le3102999989581377725nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ one_one_Code_integer ) ).

% neg_numeral_le_one
thf(fact_4417_neg__numeral__le__one,axiom,
    ! [M: num] : ( ord_less_eq_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ one_one_rat ) ).

% neg_numeral_le_one
thf(fact_4418_neg__numeral__le__one,axiom,
    ! [M: num] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ one_one_int ) ).

% neg_numeral_le_one
thf(fact_4419_neg__mod__sign,axiom,
    ! [L: int,K: int] :
      ( ( ord_less_int @ L @ zero_zero_int )
     => ( ord_less_eq_int @ ( modulo_modulo_int @ K @ L ) @ zero_zero_int ) ) ).

% neg_mod_sign
thf(fact_4420_Euclidean__Division_Opos__mod__sign,axiom,
    ! [L: int,K: int] :
      ( ( ord_less_int @ zero_zero_int @ L )
     => ( ord_less_eq_int @ zero_zero_int @ ( modulo_modulo_int @ K @ L ) ) ) ).

% Euclidean_Division.pos_mod_sign
thf(fact_4421_neg__mod__conj,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ B @ zero_zero_int )
     => ( ( ord_less_eq_int @ ( modulo_modulo_int @ A @ B ) @ zero_zero_int )
        & ( ord_less_int @ B @ ( modulo_modulo_int @ A @ B ) ) ) ) ).

% neg_mod_conj
thf(fact_4422_pos__mod__conj,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_eq_int @ zero_zero_int @ ( modulo_modulo_int @ A @ B ) )
        & ( ord_less_int @ ( modulo_modulo_int @ A @ B ) @ B ) ) ) ).

% pos_mod_conj
thf(fact_4423_zmod__trivial__iff,axiom,
    ! [I: int,K: int] :
      ( ( ( modulo_modulo_int @ I @ K )
        = I )
      = ( ( K = zero_zero_int )
        | ( ( ord_less_eq_int @ zero_zero_int @ I )
          & ( ord_less_int @ I @ K ) )
        | ( ( ord_less_eq_int @ I @ zero_zero_int )
          & ( ord_less_int @ K @ I ) ) ) ) ).

% zmod_trivial_iff
thf(fact_4424_eq__divide__eq__numeral_I1_J,axiom,
    ! [W2: num,B: rat,C: rat] :
      ( ( ( numeral_numeral_rat @ W2 )
        = ( divide_divide_rat @ B @ C ) )
      = ( ( ( C != zero_zero_rat )
         => ( ( times_times_rat @ ( numeral_numeral_rat @ W2 ) @ C )
            = B ) )
        & ( ( C = zero_zero_rat )
         => ( ( numeral_numeral_rat @ W2 )
            = zero_zero_rat ) ) ) ) ).

% eq_divide_eq_numeral(1)
thf(fact_4425_divide__eq__eq__numeral_I1_J,axiom,
    ! [B: rat,C: rat,W2: num] :
      ( ( ( divide_divide_rat @ B @ C )
        = ( numeral_numeral_rat @ W2 ) )
      = ( ( ( C != zero_zero_rat )
         => ( B
            = ( times_times_rat @ ( numeral_numeral_rat @ W2 ) @ C ) ) )
        & ( ( C = zero_zero_rat )
         => ( ( numeral_numeral_rat @ W2 )
            = zero_zero_rat ) ) ) ) ).

% divide_eq_eq_numeral(1)
thf(fact_4426_nat__mod__eq__lemma,axiom,
    ! [X2: nat,N: nat,Y: nat] :
      ( ( ( modulo_modulo_nat @ X2 @ N )
        = ( modulo_modulo_nat @ Y @ N ) )
     => ( ( ord_less_eq_nat @ Y @ X2 )
       => ? [Q4: nat] :
            ( X2
            = ( plus_plus_nat @ Y @ ( times_times_nat @ N @ Q4 ) ) ) ) ) ).

% nat_mod_eq_lemma
thf(fact_4427_mod__eq__nat2E,axiom,
    ! [M: nat,Q2: nat,N: nat] :
      ( ( ( modulo_modulo_nat @ M @ Q2 )
        = ( modulo_modulo_nat @ N @ Q2 ) )
     => ( ( ord_less_eq_nat @ M @ N )
       => ~ ! [S2: nat] :
              ( N
             != ( plus_plus_nat @ M @ ( times_times_nat @ Q2 @ S2 ) ) ) ) ) ).

% mod_eq_nat2E
thf(fact_4428_mod__eq__nat1E,axiom,
    ! [M: nat,Q2: nat,N: nat] :
      ( ( ( modulo_modulo_nat @ M @ Q2 )
        = ( modulo_modulo_nat @ N @ Q2 ) )
     => ( ( ord_less_eq_nat @ N @ M )
       => ~ ! [S2: nat] :
              ( M
             != ( plus_plus_nat @ N @ ( times_times_nat @ Q2 @ S2 ) ) ) ) ) ).

% mod_eq_nat1E
thf(fact_4429_neg__numeral__less__one,axiom,
    ! [M: num] : ( ord_less_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ one_one_int ) ).

% neg_numeral_less_one
thf(fact_4430_neg__numeral__less__one,axiom,
    ! [M: num] : ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ one_one_Code_integer ) ).

% neg_numeral_less_one
thf(fact_4431_neg__numeral__less__one,axiom,
    ! [M: num] : ( ord_less_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ one_one_rat ) ).

% neg_numeral_less_one
thf(fact_4432_neg__one__less__numeral,axiom,
    ! [M: num] : ( ord_less_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ M ) ) ).

% neg_one_less_numeral
thf(fact_4433_neg__one__less__numeral,axiom,
    ! [M: num] : ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( numera6620942414471956472nteger @ M ) ) ).

% neg_one_less_numeral
thf(fact_4434_neg__one__less__numeral,axiom,
    ! [M: num] : ( ord_less_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( numeral_numeral_rat @ M ) ) ).

% neg_one_less_numeral
thf(fact_4435_not__numeral__less__neg__one,axiom,
    ! [M: num] :
      ~ ( ord_less_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ one_one_int ) ) ).

% not_numeral_less_neg_one
thf(fact_4436_not__numeral__less__neg__one,axiom,
    ! [M: num] :
      ~ ( ord_le6747313008572928689nteger @ ( numera6620942414471956472nteger @ M ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) ) ).

% not_numeral_less_neg_one
thf(fact_4437_not__numeral__less__neg__one,axiom,
    ! [M: num] :
      ~ ( ord_less_rat @ ( numeral_numeral_rat @ M ) @ ( uminus_uminus_rat @ one_one_rat ) ) ).

% not_numeral_less_neg_one
thf(fact_4438_not__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) ) ).

% not_one_less_neg_numeral
thf(fact_4439_not__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_le6747313008572928689nteger @ one_one_Code_integer @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) ) ).

% not_one_less_neg_numeral
thf(fact_4440_not__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_rat @ one_one_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) ) ).

% not_one_less_neg_numeral
thf(fact_4441_not__neg__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_int @ ( uminus_uminus_int @ one_one_int ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) ) ).

% not_neg_one_less_neg_numeral
thf(fact_4442_not__neg__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_le6747313008572928689nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) ) ).

% not_neg_one_less_neg_numeral
thf(fact_4443_not__neg__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) ) ).

% not_neg_one_less_neg_numeral
thf(fact_4444_div__less__mono,axiom,
    ! [A4: nat,B4: nat,N: nat] :
      ( ( ord_less_nat @ A4 @ B4 )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( ( modulo_modulo_nat @ A4 @ N )
            = zero_zero_nat )
         => ( ( ( modulo_modulo_nat @ B4 @ N )
              = zero_zero_nat )
           => ( ord_less_nat @ ( divide_divide_nat @ A4 @ N ) @ ( divide_divide_nat @ B4 @ N ) ) ) ) ) ) ).

% div_less_mono
thf(fact_4445_abs__mod__less,axiom,
    ! [L: int,K: int] :
      ( ( L != zero_zero_int )
     => ( ord_less_int @ ( abs_abs_int @ ( modulo_modulo_int @ K @ L ) ) @ ( abs_abs_int @ L ) ) ) ).

% abs_mod_less
thf(fact_4446_zmod__zminus1__eq__if,axiom,
    ! [A: int,B: int] :
      ( ( ( ( modulo_modulo_int @ A @ B )
          = zero_zero_int )
       => ( ( modulo_modulo_int @ ( uminus_uminus_int @ A ) @ B )
          = zero_zero_int ) )
      & ( ( ( modulo_modulo_int @ A @ B )
         != zero_zero_int )
       => ( ( modulo_modulo_int @ ( uminus_uminus_int @ A ) @ B )
          = ( minus_minus_int @ B @ ( modulo_modulo_int @ A @ B ) ) ) ) ) ).

% zmod_zminus1_eq_if
thf(fact_4447_zmod__zminus2__eq__if,axiom,
    ! [A: int,B: int] :
      ( ( ( ( modulo_modulo_int @ A @ B )
          = zero_zero_int )
       => ( ( modulo_modulo_int @ A @ ( uminus_uminus_int @ B ) )
          = zero_zero_int ) )
      & ( ( ( modulo_modulo_int @ A @ B )
         != zero_zero_int )
       => ( ( modulo_modulo_int @ A @ ( uminus_uminus_int @ B ) )
          = ( minus_minus_int @ ( modulo_modulo_int @ A @ B ) @ B ) ) ) ) ).

% zmod_zminus2_eq_if
thf(fact_4448_zdiv__mono__strict,axiom,
    ! [A4: int,B4: int,N: int] :
      ( ( ord_less_int @ A4 @ B4 )
     => ( ( ord_less_int @ zero_zero_int @ N )
       => ( ( ( modulo_modulo_int @ A4 @ N )
            = zero_zero_int )
         => ( ( ( modulo_modulo_int @ B4 @ N )
              = zero_zero_int )
           => ( ord_less_int @ ( divide_divide_int @ A4 @ N ) @ ( divide_divide_int @ B4 @ N ) ) ) ) ) ) ).

% zdiv_mono_strict
thf(fact_4449_mod__mult2__eq,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( modulo_modulo_nat @ M @ ( times_times_nat @ N @ Q2 ) )
      = ( plus_plus_nat @ ( times_times_nat @ N @ ( modulo_modulo_nat @ ( divide_divide_nat @ M @ N ) @ Q2 ) ) @ ( modulo_modulo_nat @ M @ N ) ) ) ).

% mod_mult2_eq
thf(fact_4450_div__mod__decomp,axiom,
    ! [A4: nat,N: nat] :
      ( A4
      = ( plus_plus_nat @ ( times_times_nat @ ( divide_divide_nat @ A4 @ N ) @ N ) @ ( modulo_modulo_nat @ A4 @ N ) ) ) ).

% div_mod_decomp
thf(fact_4451_fact__le__power,axiom,
    ! [N: nat] : ( ord_le3102999989581377725nteger @ ( semiri3624122377584611663nteger @ N ) @ ( semiri4939895301339042750nteger @ ( power_power_nat @ N @ N ) ) ) ).

% fact_le_power
thf(fact_4452_fact__le__power,axiom,
    ! [N: nat] : ( ord_le1926595141338095240atural @ ( semiri2447717529341329178atural @ N ) @ ( semiri3763490453095760265atural @ ( power_power_nat @ N @ N ) ) ) ).

% fact_le_power
thf(fact_4453_fact__le__power,axiom,
    ! [N: nat] : ( ord_less_eq_rat @ ( semiri773545260158071498ct_rat @ N ) @ ( semiri681578069525770553at_rat @ ( power_power_nat @ N @ N ) ) ) ).

% fact_le_power
thf(fact_4454_fact__le__power,axiom,
    ! [N: nat] : ( ord_less_eq_int @ ( semiri1406184849735516958ct_int @ N ) @ ( semiri1314217659103216013at_int @ ( power_power_nat @ N @ N ) ) ) ).

% fact_le_power
thf(fact_4455_fact__le__power,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ ( semiri1408675320244567234ct_nat @ N ) @ ( semiri1316708129612266289at_nat @ ( power_power_nat @ N @ N ) ) ) ).

% fact_le_power
thf(fact_4456_div__mod__decomp__int,axiom,
    ! [A4: int,N: int] :
      ( A4
      = ( plus_plus_int @ ( times_times_int @ ( divide_divide_int @ A4 @ N ) @ N ) @ ( modulo_modulo_int @ A4 @ N ) ) ) ).

% div_mod_decomp_int
thf(fact_4457_fact__div__fact__le__pow,axiom,
    ! [R: nat,N: nat] :
      ( ( ord_less_eq_nat @ R @ N )
     => ( ord_less_eq_nat @ ( divide_divide_nat @ ( semiri1408675320244567234ct_nat @ N ) @ ( semiri1408675320244567234ct_nat @ ( minus_minus_nat @ N @ R ) ) ) @ ( power_power_nat @ N @ R ) ) ) ).

% fact_div_fact_le_pow
thf(fact_4458_mod__mult2__eq_H,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( modulo_modulo_int @ A @ ( times_times_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( semiri1314217659103216013at_int @ M ) @ ( modulo_modulo_int @ ( divide_divide_int @ A @ ( semiri1314217659103216013at_int @ M ) ) @ ( semiri1314217659103216013at_int @ N ) ) ) @ ( modulo_modulo_int @ A @ ( semiri1314217659103216013at_int @ M ) ) ) ) ).

% mod_mult2_eq'
thf(fact_4459_mod__mult2__eq_H,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( modulo_modulo_nat @ A @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( semiri1316708129612266289at_nat @ N ) ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ M ) @ ( modulo_modulo_nat @ ( divide_divide_nat @ A @ ( semiri1316708129612266289at_nat @ M ) ) @ ( semiri1316708129612266289at_nat @ N ) ) ) @ ( modulo_modulo_nat @ A @ ( semiri1316708129612266289at_nat @ M ) ) ) ) ).

% mod_mult2_eq'
thf(fact_4460_mod__mult2__eq_H,axiom,
    ! [A: code_integer,M: nat,N: nat] :
      ( ( modulo364778990260209775nteger @ A @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ M ) @ ( semiri4939895301339042750nteger @ N ) ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( semiri4939895301339042750nteger @ M ) @ ( modulo364778990260209775nteger @ ( divide6298287555418463151nteger @ A @ ( semiri4939895301339042750nteger @ M ) ) @ ( semiri4939895301339042750nteger @ N ) ) ) @ ( modulo364778990260209775nteger @ A @ ( semiri4939895301339042750nteger @ M ) ) ) ) ).

% mod_mult2_eq'
thf(fact_4461_mod__mult2__eq_H,axiom,
    ! [A: code_natural,M: nat,N: nat] :
      ( ( modulo8411746178871703098atural @ A @ ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ M ) @ ( semiri3763490453095760265atural @ N ) ) )
      = ( plus_p4538020629002901425atural @ ( times_2397367101498566445atural @ ( semiri3763490453095760265atural @ M ) @ ( modulo8411746178871703098atural @ ( divide5121882707175180666atural @ A @ ( semiri3763490453095760265atural @ M ) ) @ ( semiri3763490453095760265atural @ N ) ) ) @ ( modulo8411746178871703098atural @ A @ ( semiri3763490453095760265atural @ M ) ) ) ) ).

% mod_mult2_eq'
thf(fact_4462_split__mod,axiom,
    ! [P: nat > $o,M: nat,N: nat] :
      ( ( P @ ( modulo_modulo_nat @ M @ N ) )
      = ( ( ( N = zero_zero_nat )
         => ( P @ M ) )
        & ( ( N != zero_zero_nat )
         => ! [I2: nat,J3: nat] :
              ( ( ord_less_nat @ J3 @ N )
             => ( ( M
                  = ( plus_plus_nat @ ( times_times_nat @ N @ I2 ) @ J3 ) )
               => ( P @ J3 ) ) ) ) ) ) ).

% split_mod
thf(fact_4463_less__divide__eq__numeral_I1_J,axiom,
    ! [W2: num,B: rat,C: rat] :
      ( ( ord_less_rat @ ( numeral_numeral_rat @ W2 ) @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ ( times_times_rat @ ( numeral_numeral_rat @ W2 ) @ C ) @ B ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ B @ ( times_times_rat @ ( numeral_numeral_rat @ W2 ) @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ ( numeral_numeral_rat @ W2 ) @ zero_zero_rat ) ) ) ) ) ) ).

% less_divide_eq_numeral(1)
thf(fact_4464_divide__less__eq__numeral_I1_J,axiom,
    ! [B: rat,C: rat,W2: num] :
      ( ( ord_less_rat @ ( divide_divide_rat @ B @ C ) @ ( numeral_numeral_rat @ W2 ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ B @ ( times_times_rat @ ( numeral_numeral_rat @ W2 ) @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ ( times_times_rat @ ( numeral_numeral_rat @ W2 ) @ C ) @ B ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ zero_zero_rat @ ( numeral_numeral_rat @ W2 ) ) ) ) ) ) ) ).

% divide_less_eq_numeral(1)
thf(fact_4465_field__char__0__class_Oof__nat__div,axiom,
    ! [M: nat,N: nat] :
      ( ( semiri681578069525770553at_rat @ ( divide_divide_nat @ M @ N ) )
      = ( divide_divide_rat @ ( minus_minus_rat @ ( semiri681578069525770553at_rat @ M ) @ ( semiri681578069525770553at_rat @ ( modulo_modulo_nat @ M @ N ) ) ) @ ( semiri681578069525770553at_rat @ N ) ) ) ).

% field_char_0_class.of_nat_div
thf(fact_4466_eq__divide__eq__numeral_I2_J,axiom,
    ! [W2: num,B: rat,C: rat] :
      ( ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) )
        = ( divide_divide_rat @ B @ C ) )
      = ( ( ( C != zero_zero_rat )
         => ( ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) @ C )
            = B ) )
        & ( ( C = zero_zero_rat )
         => ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) )
            = zero_zero_rat ) ) ) ) ).

% eq_divide_eq_numeral(2)
thf(fact_4467_divide__eq__eq__numeral_I2_J,axiom,
    ! [B: rat,C: rat,W2: num] :
      ( ( ( divide_divide_rat @ B @ C )
        = ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) )
      = ( ( ( C != zero_zero_rat )
         => ( B
            = ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) @ C ) ) )
        & ( ( C = zero_zero_rat )
         => ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) )
            = zero_zero_rat ) ) ) ) ).

% divide_eq_eq_numeral(2)
thf(fact_4468_mod__pos__neg__trivial,axiom,
    ! [K: int,L: int] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ( ( ord_less_eq_int @ ( plus_plus_int @ K @ L ) @ zero_zero_int )
       => ( ( modulo_modulo_int @ K @ L )
          = ( plus_plus_int @ K @ L ) ) ) ) ).

% mod_pos_neg_trivial
thf(fact_4469_mod__pos__geq,axiom,
    ! [L: int,K: int] :
      ( ( ord_less_int @ zero_zero_int @ L )
     => ( ( ord_less_eq_int @ L @ K )
       => ( ( modulo_modulo_int @ K @ L )
          = ( modulo_modulo_int @ ( minus_minus_int @ K @ L ) @ L ) ) ) ) ).

% mod_pos_geq
thf(fact_4470_array__of__list__make,axiom,
    ( array_of_list_nat
    = ( ^ [Xs3: list_nat] : ( array_make_nat @ ( size_size_list_nat @ Xs3 ) @ ( nth_nat @ Xs3 ) ) ) ) ).

% array_of_list_make
thf(fact_4471_array__of__list__make,axiom,
    ( array_of_list_int
    = ( ^ [Xs3: list_int] : ( array_make_int @ ( size_size_list_int @ Xs3 ) @ ( nth_int @ Xs3 ) ) ) ) ).

% array_of_list_make
thf(fact_4472_array__of__list__make,axiom,
    ( array_of_list_o
    = ( ^ [Xs3: list_o] : ( array_make_o @ ( size_size_list_o @ Xs3 ) @ ( nth_o @ Xs3 ) ) ) ) ).

% array_of_list_make
thf(fact_4473_nat__power__eq,axiom,
    ! [Z2: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
     => ( ( nat2 @ ( power_power_int @ Z2 @ N ) )
        = ( power_power_nat @ ( nat2 @ Z2 ) @ N ) ) ) ).

% nat_power_eq
thf(fact_4474_unique__euclidean__semiring__numeral__class_Omod__mult2__eq,axiom,
    ! [C: code_integer,A: code_integer,B: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ C )
     => ( ( modulo364778990260209775nteger @ A @ ( times_3573771949741848930nteger @ B @ C ) )
        = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ B @ ( modulo364778990260209775nteger @ ( divide6298287555418463151nteger @ A @ B ) @ C ) ) @ ( modulo364778990260209775nteger @ A @ B ) ) ) ) ).

% unique_euclidean_semiring_numeral_class.mod_mult2_eq
thf(fact_4475_unique__euclidean__semiring__numeral__class_Omod__mult2__eq,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ C )
     => ( ( modulo_modulo_nat @ A @ ( times_times_nat @ B @ C ) )
        = ( plus_plus_nat @ ( times_times_nat @ B @ ( modulo_modulo_nat @ ( divide_divide_nat @ A @ B ) @ C ) ) @ ( modulo_modulo_nat @ A @ B ) ) ) ) ).

% unique_euclidean_semiring_numeral_class.mod_mult2_eq
thf(fact_4476_unique__euclidean__semiring__numeral__class_Omod__mult2__eq,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ C )
     => ( ( modulo_modulo_int @ A @ ( times_times_int @ B @ C ) )
        = ( plus_plus_int @ ( times_times_int @ B @ ( modulo_modulo_int @ ( divide_divide_int @ A @ B ) @ C ) ) @ ( modulo_modulo_int @ A @ B ) ) ) ) ).

% unique_euclidean_semiring_numeral_class.mod_mult2_eq
thf(fact_4477_fold__atLeastAtMost__nat_Osimps,axiom,
    ( set_fo2584398358068434914at_nat
    = ( ^ [F3: nat > nat > nat,A2: nat,B2: nat,Acc: nat] : ( if_nat @ ( ord_less_nat @ B2 @ A2 ) @ Acc @ ( set_fo2584398358068434914at_nat @ F3 @ ( plus_plus_nat @ A2 @ one_one_nat ) @ B2 @ ( F3 @ A2 @ Acc ) ) ) ) ) ).

% fold_atLeastAtMost_nat.simps
thf(fact_4478_fold__atLeastAtMost__nat_Oelims,axiom,
    ! [X2: nat > nat > nat,Xa: nat,Xb: nat,Xc: nat,Y: nat] :
      ( ( ( set_fo2584398358068434914at_nat @ X2 @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( ord_less_nat @ Xb @ Xa )
         => ( Y = Xc ) )
        & ( ~ ( ord_less_nat @ Xb @ Xa )
         => ( Y
            = ( set_fo2584398358068434914at_nat @ X2 @ ( plus_plus_nat @ Xa @ one_one_nat ) @ Xb @ ( X2 @ Xa @ Xc ) ) ) ) ) ) ).

% fold_atLeastAtMost_nat.elims
thf(fact_4479_divide__le__eq__numeral_I1_J,axiom,
    ! [B: rat,C: rat,W2: num] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ C ) @ ( numeral_numeral_rat @ W2 ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ B @ ( times_times_rat @ ( numeral_numeral_rat @ W2 ) @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ ( times_times_rat @ ( numeral_numeral_rat @ W2 ) @ C ) @ B ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ zero_zero_rat @ ( numeral_numeral_rat @ W2 ) ) ) ) ) ) ) ).

% divide_le_eq_numeral(1)
thf(fact_4480_le__divide__eq__numeral_I1_J,axiom,
    ! [W2: num,B: rat,C: rat] :
      ( ( ord_less_eq_rat @ ( numeral_numeral_rat @ W2 ) @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ ( times_times_rat @ ( numeral_numeral_rat @ W2 ) @ C ) @ B ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ B @ ( times_times_rat @ ( numeral_numeral_rat @ W2 ) @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ ( numeral_numeral_rat @ W2 ) @ zero_zero_rat ) ) ) ) ) ) ).

% le_divide_eq_numeral(1)
thf(fact_4481_Suc__times__mod__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ M )
     => ( ( modulo_modulo_nat @ ( suc @ ( times_times_nat @ M @ N ) ) @ M )
        = one_one_nat ) ) ).

% Suc_times_mod_eq
thf(fact_4482_divide__less__eq__numeral_I2_J,axiom,
    ! [B: rat,C: rat,W2: num] :
      ( ( ord_less_rat @ ( divide_divide_rat @ B @ C ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ B @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) @ C ) @ B ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ zero_zero_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) ) ) ) ) ) ) ).

% divide_less_eq_numeral(2)
thf(fact_4483_less__divide__eq__numeral_I2_J,axiom,
    ! [W2: num,B: rat,C: rat] :
      ( ( ord_less_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) @ ( divide_divide_rat @ B @ C ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_rat @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) @ C ) @ B ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ B @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) @ C ) ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) @ zero_zero_rat ) ) ) ) ) ) ).

% less_divide_eq_numeral(2)
thf(fact_4484_int__mod__pos__eq,axiom,
    ! [A: int,B: int,Q2: int,R: int] :
      ( ( A
        = ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R ) )
     => ( ( ord_less_eq_int @ zero_zero_int @ R )
       => ( ( ord_less_int @ R @ B )
         => ( ( modulo_modulo_int @ A @ B )
            = R ) ) ) ) ).

% int_mod_pos_eq
thf(fact_4485_int__mod__neg__eq,axiom,
    ! [A: int,B: int,Q2: int,R: int] :
      ( ( A
        = ( plus_plus_int @ ( times_times_int @ B @ Q2 ) @ R ) )
     => ( ( ord_less_eq_int @ R @ zero_zero_int )
       => ( ( ord_less_int @ B @ R )
         => ( ( modulo_modulo_int @ A @ B )
            = R ) ) ) ) ).

% int_mod_neg_eq
thf(fact_4486_split__zmod,axiom,
    ! [P: int > $o,N: int,K: int] :
      ( ( P @ ( modulo_modulo_int @ N @ K ) )
      = ( ( ( K = zero_zero_int )
         => ( P @ N ) )
        & ( ( ord_less_int @ zero_zero_int @ K )
         => ! [I2: int,J3: int] :
              ( ( ( ord_less_eq_int @ zero_zero_int @ J3 )
                & ( ord_less_int @ J3 @ K )
                & ( N
                  = ( plus_plus_int @ ( times_times_int @ K @ I2 ) @ J3 ) ) )
             => ( P @ J3 ) ) )
        & ( ( ord_less_int @ K @ zero_zero_int )
         => ! [I2: int,J3: int] :
              ( ( ( ord_less_int @ K @ J3 )
                & ( ord_less_eq_int @ J3 @ zero_zero_int )
                & ( N
                  = ( plus_plus_int @ ( times_times_int @ K @ I2 ) @ J3 ) ) )
             => ( P @ J3 ) ) ) ) ) ).

% split_zmod
thf(fact_4487_minus__mod__int__eq,axiom,
    ! [L: int,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ L )
     => ( ( modulo_modulo_int @ ( uminus_uminus_int @ K ) @ L )
        = ( minus_minus_int @ ( minus_minus_int @ L @ one_one_int ) @ ( modulo_modulo_int @ ( minus_minus_int @ K @ one_one_int ) @ L ) ) ) ) ).

% minus_mod_int_eq
thf(fact_4488_zmod__minus1,axiom,
    ! [B: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( modulo_modulo_int @ ( uminus_uminus_int @ one_one_int ) @ B )
        = ( minus_minus_int @ B @ one_one_int ) ) ) ).

% zmod_minus1
thf(fact_4489_zmod__zmult2__eq,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ C )
     => ( ( modulo_modulo_int @ A @ ( times_times_int @ B @ C ) )
        = ( plus_plus_int @ ( times_times_int @ B @ ( modulo_modulo_int @ ( divide_divide_int @ A @ B ) @ C ) ) @ ( modulo_modulo_int @ A @ B ) ) ) ) ).

% zmod_zmult2_eq
thf(fact_4490_zdiv__zminus1__eq__if,axiom,
    ! [B: int,A: int] :
      ( ( B != zero_zero_int )
     => ( ( ( ( modulo_modulo_int @ A @ B )
            = zero_zero_int )
         => ( ( divide_divide_int @ ( uminus_uminus_int @ A ) @ B )
            = ( uminus_uminus_int @ ( divide_divide_int @ A @ B ) ) ) )
        & ( ( ( modulo_modulo_int @ A @ B )
           != zero_zero_int )
         => ( ( divide_divide_int @ ( uminus_uminus_int @ A ) @ B )
            = ( minus_minus_int @ ( uminus_uminus_int @ ( divide_divide_int @ A @ B ) ) @ one_one_int ) ) ) ) ) ).

% zdiv_zminus1_eq_if
thf(fact_4491_zdiv__zminus2__eq__if,axiom,
    ! [B: int,A: int] :
      ( ( B != zero_zero_int )
     => ( ( ( ( modulo_modulo_int @ A @ B )
            = zero_zero_int )
         => ( ( divide_divide_int @ A @ ( uminus_uminus_int @ B ) )
            = ( uminus_uminus_int @ ( divide_divide_int @ A @ B ) ) ) )
        & ( ( ( modulo_modulo_int @ A @ B )
           != zero_zero_int )
         => ( ( divide_divide_int @ A @ ( uminus_uminus_int @ B ) )
            = ( minus_minus_int @ ( uminus_uminus_int @ ( divide_divide_int @ A @ B ) ) @ one_one_int ) ) ) ) ) ).

% zdiv_zminus2_eq_if
thf(fact_4492_divide__le__eq__numeral_I2_J,axiom,
    ! [B: rat,C: rat,W2: num] :
      ( ( ord_less_eq_rat @ ( divide_divide_rat @ B @ C ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) )
      = ( ( ( ord_less_rat @ zero_zero_rat @ C )
         => ( ord_less_eq_rat @ B @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) @ C ) ) )
        & ( ~ ( ord_less_rat @ zero_zero_rat @ C )
         => ( ( ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ ( times_times_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) @ C ) @ B ) )
            & ( ~ ( ord_less_rat @ C @ zero_zero_rat )
             => ( ord_less_eq_rat @ zero_zero_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) ) ) ) ) ) ) ).

% divide_le_eq_numeral(2)
thf(fact_4493_sorted__in__between,axiom,
    ! [I: nat,J: nat,L: list_o,X2: $o] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ I )
     => ( ( ord_less_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_o @ L ) )
         => ( ( sorted_wrt_o @ ord_less_eq_o @ L )
           => ( ( ord_less_eq_o @ ( nth_o @ L @ I ) @ X2 )
             => ( ( ord_less_o @ X2 @ ( nth_o @ L @ J ) )
               => ~ ! [K3: nat] :
                      ( ( ord_less_eq_nat @ I @ K3 )
                     => ( ( ord_less_nat @ K3 @ J )
                       => ( ( ord_less_eq_o @ ( nth_o @ L @ K3 ) @ X2 )
                         => ~ ( ord_less_o @ X2 @ ( nth_o @ L @ ( plus_plus_nat @ K3 @ one_one_nat ) ) ) ) ) ) ) ) ) ) ) ) ).

% sorted_in_between
thf(fact_4494_sorted__in__between,axiom,
    ! [I: nat,J: nat,L: list_Code_integer,X2: code_integer] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ I )
     => ( ( ord_less_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_s3445333598471063425nteger @ L ) )
         => ( ( sorted710888440204495920nteger @ ord_le3102999989581377725nteger @ L )
           => ( ( ord_le3102999989581377725nteger @ ( nth_Code_integer @ L @ I ) @ X2 )
             => ( ( ord_le6747313008572928689nteger @ X2 @ ( nth_Code_integer @ L @ J ) )
               => ~ ! [K3: nat] :
                      ( ( ord_less_eq_nat @ I @ K3 )
                     => ( ( ord_less_nat @ K3 @ J )
                       => ( ( ord_le3102999989581377725nteger @ ( nth_Code_integer @ L @ K3 ) @ X2 )
                         => ~ ( ord_le6747313008572928689nteger @ X2 @ ( nth_Code_integer @ L @ ( plus_plus_nat @ K3 @ one_one_nat ) ) ) ) ) ) ) ) ) ) ) ) ).

% sorted_in_between
thf(fact_4495_sorted__in__between,axiom,
    ! [I: nat,J: nat,L: list_rat,X2: rat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ I )
     => ( ( ord_less_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_rat @ L ) )
         => ( ( sorted_wrt_rat @ ord_less_eq_rat @ L )
           => ( ( ord_less_eq_rat @ ( nth_rat @ L @ I ) @ X2 )
             => ( ( ord_less_rat @ X2 @ ( nth_rat @ L @ J ) )
               => ~ ! [K3: nat] :
                      ( ( ord_less_eq_nat @ I @ K3 )
                     => ( ( ord_less_nat @ K3 @ J )
                       => ( ( ord_less_eq_rat @ ( nth_rat @ L @ K3 ) @ X2 )
                         => ~ ( ord_less_rat @ X2 @ ( nth_rat @ L @ ( plus_plus_nat @ K3 @ one_one_nat ) ) ) ) ) ) ) ) ) ) ) ) ).

% sorted_in_between
thf(fact_4496_sorted__in__between,axiom,
    ! [I: nat,J: nat,L: list_num,X2: num] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ I )
     => ( ( ord_less_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_num @ L ) )
         => ( ( sorted_wrt_num @ ord_less_eq_num @ L )
           => ( ( ord_less_eq_num @ ( nth_num @ L @ I ) @ X2 )
             => ( ( ord_less_num @ X2 @ ( nth_num @ L @ J ) )
               => ~ ! [K3: nat] :
                      ( ( ord_less_eq_nat @ I @ K3 )
                     => ( ( ord_less_nat @ K3 @ J )
                       => ( ( ord_less_eq_num @ ( nth_num @ L @ K3 ) @ X2 )
                         => ~ ( ord_less_num @ X2 @ ( nth_num @ L @ ( plus_plus_nat @ K3 @ one_one_nat ) ) ) ) ) ) ) ) ) ) ) ) ).

% sorted_in_between
thf(fact_4497_sorted__in__between,axiom,
    ! [I: nat,J: nat,L: list_nat,X2: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ I )
     => ( ( ord_less_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_nat @ L ) )
         => ( ( sorted_wrt_nat @ ord_less_eq_nat @ L )
           => ( ( ord_less_eq_nat @ ( nth_nat @ L @ I ) @ X2 )
             => ( ( ord_less_nat @ X2 @ ( nth_nat @ L @ J ) )
               => ~ ! [K3: nat] :
                      ( ( ord_less_eq_nat @ I @ K3 )
                     => ( ( ord_less_nat @ K3 @ J )
                       => ( ( ord_less_eq_nat @ ( nth_nat @ L @ K3 ) @ X2 )
                         => ~ ( ord_less_nat @ X2 @ ( nth_nat @ L @ ( plus_plus_nat @ K3 @ one_one_nat ) ) ) ) ) ) ) ) ) ) ) ) ).

% sorted_in_between
thf(fact_4498_sorted__in__between,axiom,
    ! [I: nat,J: nat,L: list_int,X2: int] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ I )
     => ( ( ord_less_nat @ I @ J )
       => ( ( ord_less_nat @ J @ ( size_size_list_int @ L ) )
         => ( ( sorted_wrt_int @ ord_less_eq_int @ L )
           => ( ( ord_less_eq_int @ ( nth_int @ L @ I ) @ X2 )
             => ( ( ord_less_int @ X2 @ ( nth_int @ L @ J ) )
               => ~ ! [K3: nat] :
                      ( ( ord_less_eq_nat @ I @ K3 )
                     => ( ( ord_less_nat @ K3 @ J )
                       => ( ( ord_less_eq_int @ ( nth_int @ L @ K3 ) @ X2 )
                         => ~ ( ord_less_int @ X2 @ ( nth_int @ L @ ( plus_plus_nat @ K3 @ one_one_nat ) ) ) ) ) ) ) ) ) ) ) ) ).

% sorted_in_between
thf(fact_4499_diff__numeral__special_I6_J,axiom,
    ! [M: num] :
      ( ( minus_minus_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ one_one_int ) )
      = ( numeral_numeral_int @ ( inc @ M ) ) ) ).

% diff_numeral_special(6)
thf(fact_4500_diff__numeral__special_I6_J,axiom,
    ! [M: num] :
      ( ( minus_8373710615458151222nteger @ ( numera6620942414471956472nteger @ M ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( numera6620942414471956472nteger @ ( inc @ M ) ) ) ).

% diff_numeral_special(6)
thf(fact_4501_diff__numeral__special_I6_J,axiom,
    ! [M: num] :
      ( ( minus_minus_rat @ ( numeral_numeral_rat @ M ) @ ( uminus_uminus_rat @ one_one_rat ) )
      = ( numeral_numeral_rat @ ( inc @ M ) ) ) ).

% diff_numeral_special(6)
thf(fact_4502_diff__numeral__special_I5_J,axiom,
    ! [N: num] :
      ( ( minus_minus_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ N ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( inc @ N ) ) ) ) ).

% diff_numeral_special(5)
thf(fact_4503_diff__numeral__special_I5_J,axiom,
    ! [N: num] :
      ( ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( numera6620942414471956472nteger @ N ) )
      = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( inc @ N ) ) ) ) ).

% diff_numeral_special(5)
thf(fact_4504_diff__numeral__special_I5_J,axiom,
    ! [N: num] :
      ( ( minus_minus_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( numeral_numeral_rat @ N ) )
      = ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( inc @ N ) ) ) ) ).

% diff_numeral_special(5)
thf(fact_4505_add__neg__numeral__special_I5_J,axiom,
    ! [N: num] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ one_one_int ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( inc @ N ) ) ) ) ).

% add_neg_numeral_special(5)
thf(fact_4506_add__neg__numeral__special_I5_J,axiom,
    ! [N: num] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ N ) ) )
      = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( inc @ N ) ) ) ) ).

% add_neg_numeral_special(5)
thf(fact_4507_add__neg__numeral__special_I5_J,axiom,
    ! [N: num] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ one_one_rat ) @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ N ) ) )
      = ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( inc @ N ) ) ) ) ).

% add_neg_numeral_special(5)
thf(fact_4508_add__neg__numeral__special_I6_J,axiom,
    ! [M: num] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ one_one_int ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( inc @ M ) ) ) ) ).

% add_neg_numeral_special(6)
thf(fact_4509_add__neg__numeral__special_I6_J,axiom,
    ! [M: num] :
      ( ( plus_p5714425477246183910nteger @ ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ M ) ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) )
      = ( uminus1351360451143612070nteger @ ( numera6620942414471956472nteger @ ( inc @ M ) ) ) ) ).

% add_neg_numeral_special(6)
thf(fact_4510_add__neg__numeral__special_I6_J,axiom,
    ! [M: num] :
      ( ( plus_plus_rat @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ M ) ) @ ( uminus_uminus_rat @ one_one_rat ) )
      = ( uminus_uminus_rat @ ( numeral_numeral_rat @ ( inc @ M ) ) ) ) ).

% add_neg_numeral_special(6)
thf(fact_4511_nth__rotate,axiom,
    ! [N: nat,Xs: list_nat,M: nat] :
      ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
     => ( ( nth_nat @ ( rotate_nat @ M @ Xs ) @ N )
        = ( nth_nat @ Xs @ ( modulo_modulo_nat @ ( plus_plus_nat @ M @ N ) @ ( size_size_list_nat @ Xs ) ) ) ) ) ).

% nth_rotate
thf(fact_4512_nth__rotate,axiom,
    ! [N: nat,Xs: list_int,M: nat] :
      ( ( ord_less_nat @ N @ ( size_size_list_int @ Xs ) )
     => ( ( nth_int @ ( rotate_int @ M @ Xs ) @ N )
        = ( nth_int @ Xs @ ( modulo_modulo_nat @ ( plus_plus_nat @ M @ N ) @ ( size_size_list_int @ Xs ) ) ) ) ) ).

% nth_rotate
thf(fact_4513_nth__rotate,axiom,
    ! [N: nat,Xs: list_o,M: nat] :
      ( ( ord_less_nat @ N @ ( size_size_list_o @ Xs ) )
     => ( ( nth_o @ ( rotate_o @ M @ Xs ) @ N )
        = ( nth_o @ Xs @ ( modulo_modulo_nat @ ( plus_plus_nat @ M @ N ) @ ( size_size_list_o @ Xs ) ) ) ) ) ).

% nth_rotate
thf(fact_4514_nth__Cons__pos,axiom,
    ! [N: nat,X2: int,Xs: list_int] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( nth_int @ ( cons_int @ X2 @ Xs ) @ N )
        = ( nth_int @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% nth_Cons_pos
thf(fact_4515_nth__Cons__pos,axiom,
    ! [N: nat,X2: nat,Xs: list_nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( nth_nat @ ( cons_nat @ X2 @ Xs ) @ N )
        = ( nth_nat @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% nth_Cons_pos
thf(fact_4516_nth__Cons__pos,axiom,
    ! [N: nat,X2: char,Xs: list_char] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( nth_char @ ( cons_char @ X2 @ Xs ) @ N )
        = ( nth_char @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% nth_Cons_pos
thf(fact_4517_length__rotate,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( size_size_list_nat @ ( rotate_nat @ N @ Xs ) )
      = ( size_size_list_nat @ Xs ) ) ).

% length_rotate
thf(fact_4518_length__rotate,axiom,
    ! [N: nat,Xs: list_int] :
      ( ( size_size_list_int @ ( rotate_int @ N @ Xs ) )
      = ( size_size_list_int @ Xs ) ) ).

% length_rotate
thf(fact_4519_length__rotate,axiom,
    ! [N: nat,Xs: list_o] :
      ( ( size_size_list_o @ ( rotate_o @ N @ Xs ) )
      = ( size_size_list_o @ Xs ) ) ).

% length_rotate
thf(fact_4520_nth__Cons__0,axiom,
    ! [X2: int,Xs: list_int] :
      ( ( nth_int @ ( cons_int @ X2 @ Xs ) @ zero_zero_nat )
      = X2 ) ).

% nth_Cons_0
thf(fact_4521_nth__Cons__0,axiom,
    ! [X2: nat,Xs: list_nat] :
      ( ( nth_nat @ ( cons_nat @ X2 @ Xs ) @ zero_zero_nat )
      = X2 ) ).

% nth_Cons_0
thf(fact_4522_nth__Cons__0,axiom,
    ! [X2: char,Xs: list_char] :
      ( ( nth_char @ ( cons_char @ X2 @ Xs ) @ zero_zero_nat )
      = X2 ) ).

% nth_Cons_0
thf(fact_4523_rotate__length01,axiom,
    ! [Xs: list_nat,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat )
     => ( ( rotate_nat @ N @ Xs )
        = Xs ) ) ).

% rotate_length01
thf(fact_4524_rotate__length01,axiom,
    ! [Xs: list_int,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_int @ Xs ) @ one_one_nat )
     => ( ( rotate_int @ N @ Xs )
        = Xs ) ) ).

% rotate_length01
thf(fact_4525_rotate__length01,axiom,
    ! [Xs: list_o,N: nat] :
      ( ( ord_less_eq_nat @ ( size_size_list_o @ Xs ) @ one_one_nat )
     => ( ( rotate_o @ N @ Xs )
        = Xs ) ) ).

% rotate_length01
thf(fact_4526_rotate__id,axiom,
    ! [N: nat,Xs: list_nat] :
      ( ( ( modulo_modulo_nat @ N @ ( size_size_list_nat @ Xs ) )
        = zero_zero_nat )
     => ( ( rotate_nat @ N @ Xs )
        = Xs ) ) ).

% rotate_id
thf(fact_4527_rotate__id,axiom,
    ! [N: nat,Xs: list_int] :
      ( ( ( modulo_modulo_nat @ N @ ( size_size_list_int @ Xs ) )
        = zero_zero_nat )
     => ( ( rotate_int @ N @ Xs )
        = Xs ) ) ).

% rotate_id
thf(fact_4528_rotate__id,axiom,
    ! [N: nat,Xs: list_o] :
      ( ( ( modulo_modulo_nat @ N @ ( size_size_list_o @ Xs ) )
        = zero_zero_nat )
     => ( ( rotate_o @ N @ Xs )
        = Xs ) ) ).

% rotate_id
thf(fact_4529_nth__Cons__numeral,axiom,
    ! [X2: int,Xs: list_int,V: num] :
      ( ( nth_int @ ( cons_int @ X2 @ Xs ) @ ( numeral_numeral_nat @ V ) )
      = ( nth_int @ Xs @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) ) ) ).

% nth_Cons_numeral
thf(fact_4530_nth__Cons__numeral,axiom,
    ! [X2: nat,Xs: list_nat,V: num] :
      ( ( nth_nat @ ( cons_nat @ X2 @ Xs ) @ ( numeral_numeral_nat @ V ) )
      = ( nth_nat @ Xs @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) ) ) ).

% nth_Cons_numeral
thf(fact_4531_nth__Cons__numeral,axiom,
    ! [X2: char,Xs: list_char,V: num] :
      ( ( nth_char @ ( cons_char @ X2 @ Xs ) @ ( numeral_numeral_nat @ V ) )
      = ( nth_char @ Xs @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) ) ) ).

% nth_Cons_numeral
thf(fact_4532_mult__inc,axiom,
    ! [X2: num,Y: num] :
      ( ( times_times_num @ X2 @ ( inc @ Y ) )
      = ( plus_plus_num @ ( times_times_num @ X2 @ Y ) @ X2 ) ) ).

% mult_inc
thf(fact_4533_sorted2,axiom,
    ! [X2: rat,Y: rat,Zs: list_rat] :
      ( ( sorted_wrt_rat @ ord_less_eq_rat @ ( cons_rat @ X2 @ ( cons_rat @ Y @ Zs ) ) )
      = ( ( ord_less_eq_rat @ X2 @ Y )
        & ( sorted_wrt_rat @ ord_less_eq_rat @ ( cons_rat @ Y @ Zs ) ) ) ) ).

% sorted2
thf(fact_4534_sorted2,axiom,
    ! [X2: num,Y: num,Zs: list_num] :
      ( ( sorted_wrt_num @ ord_less_eq_num @ ( cons_num @ X2 @ ( cons_num @ Y @ Zs ) ) )
      = ( ( ord_less_eq_num @ X2 @ Y )
        & ( sorted_wrt_num @ ord_less_eq_num @ ( cons_num @ Y @ Zs ) ) ) ) ).

% sorted2
thf(fact_4535_sorted2,axiom,
    ! [X2: nat,Y: nat,Zs: list_nat] :
      ( ( sorted_wrt_nat @ ord_less_eq_nat @ ( cons_nat @ X2 @ ( cons_nat @ Y @ Zs ) ) )
      = ( ( ord_less_eq_nat @ X2 @ Y )
        & ( sorted_wrt_nat @ ord_less_eq_nat @ ( cons_nat @ Y @ Zs ) ) ) ) ).

% sorted2
thf(fact_4536_sorted2,axiom,
    ! [X2: int,Y: int,Zs: list_int] :
      ( ( sorted_wrt_int @ ord_less_eq_int @ ( cons_int @ X2 @ ( cons_int @ Y @ Zs ) ) )
      = ( ( ord_less_eq_int @ X2 @ Y )
        & ( sorted_wrt_int @ ord_less_eq_int @ ( cons_int @ Y @ Zs ) ) ) ) ).

% sorted2
thf(fact_4537_add__inc,axiom,
    ! [X2: num,Y: num] :
      ( ( plus_plus_num @ X2 @ ( inc @ Y ) )
      = ( inc @ ( plus_plus_num @ X2 @ Y ) ) ) ).

% add_inc
thf(fact_4538_list__tail__coinc,axiom,
    ! [N1: int,R1: list_int,N22: int,R22: list_int] :
      ( ( ( cons_int @ N1 @ R1 )
        = ( cons_int @ N22 @ R22 ) )
     => ( ( N1 = N22 )
        & ( R1 = R22 ) ) ) ).

% list_tail_coinc
thf(fact_4539_list__tail__coinc,axiom,
    ! [N1: nat,R1: list_nat,N22: nat,R22: list_nat] :
      ( ( ( cons_nat @ N1 @ R1 )
        = ( cons_nat @ N22 @ R22 ) )
     => ( ( N1 = N22 )
        & ( R1 = R22 ) ) ) ).

% list_tail_coinc
thf(fact_4540_list__tail__coinc,axiom,
    ! [N1: char,R1: list_char,N22: char,R22: list_char] :
      ( ( ( cons_char @ N1 @ R1 )
        = ( cons_char @ N22 @ R22 ) )
     => ( ( N1 = N22 )
        & ( R1 = R22 ) ) ) ).

% list_tail_coinc
thf(fact_4541_sorted__wrt__true,axiom,
    ! [Xs: list_nat] :
      ( sorted_wrt_nat
      @ ^ [Uu: nat,Uv: nat] : $true
      @ Xs ) ).

% sorted_wrt_true
thf(fact_4542_sorted__wrt__true,axiom,
    ! [Xs: list_int] :
      ( sorted_wrt_int
      @ ^ [Uu: int,Uv: int] : $true
      @ Xs ) ).

% sorted_wrt_true
thf(fact_4543_sorted1,axiom,
    ! [X2: rat] : ( sorted_wrt_rat @ ord_less_eq_rat @ ( cons_rat @ X2 @ nil_rat ) ) ).

% sorted1
thf(fact_4544_sorted1,axiom,
    ! [X2: num] : ( sorted_wrt_num @ ord_less_eq_num @ ( cons_num @ X2 @ nil_num ) ) ).

% sorted1
thf(fact_4545_sorted1,axiom,
    ! [X2: nat] : ( sorted_wrt_nat @ ord_less_eq_nat @ ( cons_nat @ X2 @ nil_nat ) ) ).

% sorted1
thf(fact_4546_sorted1,axiom,
    ! [X2: int] : ( sorted_wrt_int @ ord_less_eq_int @ ( cons_int @ X2 @ nil_int ) ) ).

% sorted1
thf(fact_4547_mergesort__by__rel__merge__induct,axiom,
    ! [P: list_int > list_int > $o,R3: int > int > $o,Xs: list_int,Ys: list_int] :
      ( ! [Xs2: list_int] : ( P @ Xs2 @ nil_int )
     => ( ! [X_12: list_int] : ( P @ nil_int @ X_12 )
       => ( ! [X3: int,Xs2: list_int,Y2: int,Ys4: list_int] :
              ( ( R3 @ X3 @ Y2 )
             => ( ( P @ Xs2 @ ( cons_int @ Y2 @ Ys4 ) )
               => ( P @ ( cons_int @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) ) ) )
         => ( ! [X3: int,Xs2: list_int,Y2: int,Ys4: list_int] :
                ( ~ ( R3 @ X3 @ Y2 )
               => ( ( P @ ( cons_int @ X3 @ Xs2 ) @ Ys4 )
                 => ( P @ ( cons_int @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% mergesort_by_rel_merge_induct
thf(fact_4548_mergesort__by__rel__merge__induct,axiom,
    ! [P: list_nat > list_int > $o,R3: nat > int > $o,Xs: list_nat,Ys: list_int] :
      ( ! [Xs2: list_nat] : ( P @ Xs2 @ nil_int )
     => ( ! [X_12: list_int] : ( P @ nil_nat @ X_12 )
       => ( ! [X3: nat,Xs2: list_nat,Y2: int,Ys4: list_int] :
              ( ( R3 @ X3 @ Y2 )
             => ( ( P @ Xs2 @ ( cons_int @ Y2 @ Ys4 ) )
               => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) ) ) )
         => ( ! [X3: nat,Xs2: list_nat,Y2: int,Ys4: list_int] :
                ( ~ ( R3 @ X3 @ Y2 )
               => ( ( P @ ( cons_nat @ X3 @ Xs2 ) @ Ys4 )
                 => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% mergesort_by_rel_merge_induct
thf(fact_4549_mergesort__by__rel__merge__induct,axiom,
    ! [P: list_char > list_int > $o,R3: char > int > $o,Xs: list_char,Ys: list_int] :
      ( ! [Xs2: list_char] : ( P @ Xs2 @ nil_int )
     => ( ! [X_12: list_int] : ( P @ nil_char @ X_12 )
       => ( ! [X3: char,Xs2: list_char,Y2: int,Ys4: list_int] :
              ( ( R3 @ X3 @ Y2 )
             => ( ( P @ Xs2 @ ( cons_int @ Y2 @ Ys4 ) )
               => ( P @ ( cons_char @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) ) ) )
         => ( ! [X3: char,Xs2: list_char,Y2: int,Ys4: list_int] :
                ( ~ ( R3 @ X3 @ Y2 )
               => ( ( P @ ( cons_char @ X3 @ Xs2 ) @ Ys4 )
                 => ( P @ ( cons_char @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% mergesort_by_rel_merge_induct
thf(fact_4550_mergesort__by__rel__merge__induct,axiom,
    ! [P: list_int > list_nat > $o,R3: int > nat > $o,Xs: list_int,Ys: list_nat] :
      ( ! [Xs2: list_int] : ( P @ Xs2 @ nil_nat )
     => ( ! [X_12: list_nat] : ( P @ nil_int @ X_12 )
       => ( ! [X3: int,Xs2: list_int,Y2: nat,Ys4: list_nat] :
              ( ( R3 @ X3 @ Y2 )
             => ( ( P @ Xs2 @ ( cons_nat @ Y2 @ Ys4 ) )
               => ( P @ ( cons_int @ X3 @ Xs2 ) @ ( cons_nat @ Y2 @ Ys4 ) ) ) )
         => ( ! [X3: int,Xs2: list_int,Y2: nat,Ys4: list_nat] :
                ( ~ ( R3 @ X3 @ Y2 )
               => ( ( P @ ( cons_int @ X3 @ Xs2 ) @ Ys4 )
                 => ( P @ ( cons_int @ X3 @ Xs2 ) @ ( cons_nat @ Y2 @ Ys4 ) ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% mergesort_by_rel_merge_induct
thf(fact_4551_mergesort__by__rel__merge__induct,axiom,
    ! [P: list_nat > list_nat > $o,R3: nat > nat > $o,Xs: list_nat,Ys: list_nat] :
      ( ! [Xs2: list_nat] : ( P @ Xs2 @ nil_nat )
     => ( ! [X_12: list_nat] : ( P @ nil_nat @ X_12 )
       => ( ! [X3: nat,Xs2: list_nat,Y2: nat,Ys4: list_nat] :
              ( ( R3 @ X3 @ Y2 )
             => ( ( P @ Xs2 @ ( cons_nat @ Y2 @ Ys4 ) )
               => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y2 @ Ys4 ) ) ) )
         => ( ! [X3: nat,Xs2: list_nat,Y2: nat,Ys4: list_nat] :
                ( ~ ( R3 @ X3 @ Y2 )
               => ( ( P @ ( cons_nat @ X3 @ Xs2 ) @ Ys4 )
                 => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y2 @ Ys4 ) ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% mergesort_by_rel_merge_induct
thf(fact_4552_mergesort__by__rel__merge__induct,axiom,
    ! [P: list_char > list_nat > $o,R3: char > nat > $o,Xs: list_char,Ys: list_nat] :
      ( ! [Xs2: list_char] : ( P @ Xs2 @ nil_nat )
     => ( ! [X_12: list_nat] : ( P @ nil_char @ X_12 )
       => ( ! [X3: char,Xs2: list_char,Y2: nat,Ys4: list_nat] :
              ( ( R3 @ X3 @ Y2 )
             => ( ( P @ Xs2 @ ( cons_nat @ Y2 @ Ys4 ) )
               => ( P @ ( cons_char @ X3 @ Xs2 ) @ ( cons_nat @ Y2 @ Ys4 ) ) ) )
         => ( ! [X3: char,Xs2: list_char,Y2: nat,Ys4: list_nat] :
                ( ~ ( R3 @ X3 @ Y2 )
               => ( ( P @ ( cons_char @ X3 @ Xs2 ) @ Ys4 )
                 => ( P @ ( cons_char @ X3 @ Xs2 ) @ ( cons_nat @ Y2 @ Ys4 ) ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% mergesort_by_rel_merge_induct
thf(fact_4553_mergesort__by__rel__merge__induct,axiom,
    ! [P: list_int > list_char > $o,R3: int > char > $o,Xs: list_int,Ys: list_char] :
      ( ! [Xs2: list_int] : ( P @ Xs2 @ nil_char )
     => ( ! [X_12: list_char] : ( P @ nil_int @ X_12 )
       => ( ! [X3: int,Xs2: list_int,Y2: char,Ys4: list_char] :
              ( ( R3 @ X3 @ Y2 )
             => ( ( P @ Xs2 @ ( cons_char @ Y2 @ Ys4 ) )
               => ( P @ ( cons_int @ X3 @ Xs2 ) @ ( cons_char @ Y2 @ Ys4 ) ) ) )
         => ( ! [X3: int,Xs2: list_int,Y2: char,Ys4: list_char] :
                ( ~ ( R3 @ X3 @ Y2 )
               => ( ( P @ ( cons_int @ X3 @ Xs2 ) @ Ys4 )
                 => ( P @ ( cons_int @ X3 @ Xs2 ) @ ( cons_char @ Y2 @ Ys4 ) ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% mergesort_by_rel_merge_induct
thf(fact_4554_mergesort__by__rel__merge__induct,axiom,
    ! [P: list_nat > list_char > $o,R3: nat > char > $o,Xs: list_nat,Ys: list_char] :
      ( ! [Xs2: list_nat] : ( P @ Xs2 @ nil_char )
     => ( ! [X_12: list_char] : ( P @ nil_nat @ X_12 )
       => ( ! [X3: nat,Xs2: list_nat,Y2: char,Ys4: list_char] :
              ( ( R3 @ X3 @ Y2 )
             => ( ( P @ Xs2 @ ( cons_char @ Y2 @ Ys4 ) )
               => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_char @ Y2 @ Ys4 ) ) ) )
         => ( ! [X3: nat,Xs2: list_nat,Y2: char,Ys4: list_char] :
                ( ~ ( R3 @ X3 @ Y2 )
               => ( ( P @ ( cons_nat @ X3 @ Xs2 ) @ Ys4 )
                 => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_char @ Y2 @ Ys4 ) ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% mergesort_by_rel_merge_induct
thf(fact_4555_mergesort__by__rel__merge__induct,axiom,
    ! [P: list_char > list_char > $o,R3: char > char > $o,Xs: list_char,Ys: list_char] :
      ( ! [Xs2: list_char] : ( P @ Xs2 @ nil_char )
     => ( ! [X_12: list_char] : ( P @ nil_char @ X_12 )
       => ( ! [X3: char,Xs2: list_char,Y2: char,Ys4: list_char] :
              ( ( R3 @ X3 @ Y2 )
             => ( ( P @ Xs2 @ ( cons_char @ Y2 @ Ys4 ) )
               => ( P @ ( cons_char @ X3 @ Xs2 ) @ ( cons_char @ Y2 @ Ys4 ) ) ) )
         => ( ! [X3: char,Xs2: list_char,Y2: char,Ys4: list_char] :
                ( ~ ( R3 @ X3 @ Y2 )
               => ( ( P @ ( cons_char @ X3 @ Xs2 ) @ Ys4 )
                 => ( P @ ( cons_char @ X3 @ Xs2 ) @ ( cons_char @ Y2 @ Ys4 ) ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% mergesort_by_rel_merge_induct
thf(fact_4556_list__induct__first2,axiom,
    ! [P: list_int > $o,Xs: list_int] :
      ( ( P @ nil_int )
     => ( ! [X3: int] : ( P @ ( cons_int @ X3 @ nil_int ) )
       => ( ! [X1: int,X23: int,Xs2: list_int] :
              ( ( P @ Xs2 )
             => ( P @ ( cons_int @ X1 @ ( cons_int @ X23 @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_induct_first2
thf(fact_4557_list__induct__first2,axiom,
    ! [P: list_nat > $o,Xs: list_nat] :
      ( ( P @ nil_nat )
     => ( ! [X3: nat] : ( P @ ( cons_nat @ X3 @ nil_nat ) )
       => ( ! [X1: nat,X23: nat,Xs2: list_nat] :
              ( ( P @ Xs2 )
             => ( P @ ( cons_nat @ X1 @ ( cons_nat @ X23 @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_induct_first2
thf(fact_4558_list__induct__first2,axiom,
    ! [P: list_char > $o,Xs: list_char] :
      ( ( P @ nil_char )
     => ( ! [X3: char] : ( P @ ( cons_char @ X3 @ nil_char ) )
       => ( ! [X1: char,X23: char,Xs2: list_char] :
              ( ( P @ Xs2 )
             => ( P @ ( cons_char @ X1 @ ( cons_char @ X23 @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_induct_first2
thf(fact_4559_list__2pre__induct,axiom,
    ! [P: list_int > list_int > $o,W1: list_int,W22: list_int] :
      ( ( P @ nil_int @ nil_int )
     => ( ! [E3: int,W12: list_int,W23: list_int] :
            ( ( P @ W12 @ W23 )
           => ( P @ ( cons_int @ E3 @ W12 ) @ W23 ) )
       => ( ! [E3: int,W13: list_int,W24: list_int] :
              ( ( P @ W13 @ W24 )
             => ( P @ W13 @ ( cons_int @ E3 @ W24 ) ) )
         => ( P @ W1 @ W22 ) ) ) ) ).

% list_2pre_induct
thf(fact_4560_list__2pre__induct,axiom,
    ! [P: list_int > list_nat > $o,W1: list_int,W22: list_nat] :
      ( ( P @ nil_int @ nil_nat )
     => ( ! [E3: int,W12: list_int,W23: list_nat] :
            ( ( P @ W12 @ W23 )
           => ( P @ ( cons_int @ E3 @ W12 ) @ W23 ) )
       => ( ! [E3: nat,W13: list_int,W24: list_nat] :
              ( ( P @ W13 @ W24 )
             => ( P @ W13 @ ( cons_nat @ E3 @ W24 ) ) )
         => ( P @ W1 @ W22 ) ) ) ) ).

% list_2pre_induct
thf(fact_4561_list__2pre__induct,axiom,
    ! [P: list_int > list_char > $o,W1: list_int,W22: list_char] :
      ( ( P @ nil_int @ nil_char )
     => ( ! [E3: int,W12: list_int,W23: list_char] :
            ( ( P @ W12 @ W23 )
           => ( P @ ( cons_int @ E3 @ W12 ) @ W23 ) )
       => ( ! [E3: char,W13: list_int,W24: list_char] :
              ( ( P @ W13 @ W24 )
             => ( P @ W13 @ ( cons_char @ E3 @ W24 ) ) )
         => ( P @ W1 @ W22 ) ) ) ) ).

% list_2pre_induct
thf(fact_4562_list__2pre__induct,axiom,
    ! [P: list_nat > list_int > $o,W1: list_nat,W22: list_int] :
      ( ( P @ nil_nat @ nil_int )
     => ( ! [E3: nat,W12: list_nat,W23: list_int] :
            ( ( P @ W12 @ W23 )
           => ( P @ ( cons_nat @ E3 @ W12 ) @ W23 ) )
       => ( ! [E3: int,W13: list_nat,W24: list_int] :
              ( ( P @ W13 @ W24 )
             => ( P @ W13 @ ( cons_int @ E3 @ W24 ) ) )
         => ( P @ W1 @ W22 ) ) ) ) ).

% list_2pre_induct
thf(fact_4563_list__2pre__induct,axiom,
    ! [P: list_nat > list_nat > $o,W1: list_nat,W22: list_nat] :
      ( ( P @ nil_nat @ nil_nat )
     => ( ! [E3: nat,W12: list_nat,W23: list_nat] :
            ( ( P @ W12 @ W23 )
           => ( P @ ( cons_nat @ E3 @ W12 ) @ W23 ) )
       => ( ! [E3: nat,W13: list_nat,W24: list_nat] :
              ( ( P @ W13 @ W24 )
             => ( P @ W13 @ ( cons_nat @ E3 @ W24 ) ) )
         => ( P @ W1 @ W22 ) ) ) ) ).

% list_2pre_induct
thf(fact_4564_list__2pre__induct,axiom,
    ! [P: list_nat > list_char > $o,W1: list_nat,W22: list_char] :
      ( ( P @ nil_nat @ nil_char )
     => ( ! [E3: nat,W12: list_nat,W23: list_char] :
            ( ( P @ W12 @ W23 )
           => ( P @ ( cons_nat @ E3 @ W12 ) @ W23 ) )
       => ( ! [E3: char,W13: list_nat,W24: list_char] :
              ( ( P @ W13 @ W24 )
             => ( P @ W13 @ ( cons_char @ E3 @ W24 ) ) )
         => ( P @ W1 @ W22 ) ) ) ) ).

% list_2pre_induct
thf(fact_4565_list__2pre__induct,axiom,
    ! [P: list_char > list_int > $o,W1: list_char,W22: list_int] :
      ( ( P @ nil_char @ nil_int )
     => ( ! [E3: char,W12: list_char,W23: list_int] :
            ( ( P @ W12 @ W23 )
           => ( P @ ( cons_char @ E3 @ W12 ) @ W23 ) )
       => ( ! [E3: int,W13: list_char,W24: list_int] :
              ( ( P @ W13 @ W24 )
             => ( P @ W13 @ ( cons_int @ E3 @ W24 ) ) )
         => ( P @ W1 @ W22 ) ) ) ) ).

% list_2pre_induct
thf(fact_4566_list__2pre__induct,axiom,
    ! [P: list_char > list_nat > $o,W1: list_char,W22: list_nat] :
      ( ( P @ nil_char @ nil_nat )
     => ( ! [E3: char,W12: list_char,W23: list_nat] :
            ( ( P @ W12 @ W23 )
           => ( P @ ( cons_char @ E3 @ W12 ) @ W23 ) )
       => ( ! [E3: nat,W13: list_char,W24: list_nat] :
              ( ( P @ W13 @ W24 )
             => ( P @ W13 @ ( cons_nat @ E3 @ W24 ) ) )
         => ( P @ W1 @ W22 ) ) ) ) ).

% list_2pre_induct
thf(fact_4567_list__2pre__induct,axiom,
    ! [P: list_char > list_char > $o,W1: list_char,W22: list_char] :
      ( ( P @ nil_char @ nil_char )
     => ( ! [E3: char,W12: list_char,W23: list_char] :
            ( ( P @ W12 @ W23 )
           => ( P @ ( cons_char @ E3 @ W12 ) @ W23 ) )
       => ( ! [E3: char,W13: list_char,W24: list_char] :
              ( ( P @ W13 @ W24 )
             => ( P @ W13 @ ( cons_char @ E3 @ W24 ) ) )
         => ( P @ W1 @ W22 ) ) ) ) ).

% list_2pre_induct
thf(fact_4568_neq__NilE,axiom,
    ! [L: list_int] :
      ( ( L != nil_int )
     => ~ ! [X3: int,Xs2: list_int] :
            ( L
           != ( cons_int @ X3 @ Xs2 ) ) ) ).

% neq_NilE
thf(fact_4569_neq__NilE,axiom,
    ! [L: list_nat] :
      ( ( L != nil_nat )
     => ~ ! [X3: nat,Xs2: list_nat] :
            ( L
           != ( cons_nat @ X3 @ Xs2 ) ) ) ).

% neq_NilE
thf(fact_4570_neq__NilE,axiom,
    ! [L: list_char] :
      ( ( L != nil_char )
     => ~ ! [X3: char,Xs2: list_char] :
            ( L
           != ( cons_char @ X3 @ Xs2 ) ) ) ).

% neq_NilE
thf(fact_4571_strict__sorted__imp__sorted,axiom,
    ! [Xs: list_Code_integer] :
      ( ( sorted710888440204495920nteger @ ord_le6747313008572928689nteger @ Xs )
     => ( sorted710888440204495920nteger @ ord_le3102999989581377725nteger @ Xs ) ) ).

% strict_sorted_imp_sorted
thf(fact_4572_strict__sorted__imp__sorted,axiom,
    ! [Xs: list_rat] :
      ( ( sorted_wrt_rat @ ord_less_rat @ Xs )
     => ( sorted_wrt_rat @ ord_less_eq_rat @ Xs ) ) ).

% strict_sorted_imp_sorted
thf(fact_4573_strict__sorted__imp__sorted,axiom,
    ! [Xs: list_num] :
      ( ( sorted_wrt_num @ ord_less_num @ Xs )
     => ( sorted_wrt_num @ ord_less_eq_num @ Xs ) ) ).

% strict_sorted_imp_sorted
thf(fact_4574_strict__sorted__imp__sorted,axiom,
    ! [Xs: list_nat] :
      ( ( sorted_wrt_nat @ ord_less_nat @ Xs )
     => ( sorted_wrt_nat @ ord_less_eq_nat @ Xs ) ) ).

% strict_sorted_imp_sorted
thf(fact_4575_strict__sorted__imp__sorted,axiom,
    ! [Xs: list_int] :
      ( ( sorted_wrt_int @ ord_less_int @ Xs )
     => ( sorted_wrt_int @ ord_less_eq_int @ Xs ) ) ).

% strict_sorted_imp_sorted
thf(fact_4576_sorted0,axiom,
    sorted_wrt_rat @ ord_less_eq_rat @ nil_rat ).

% sorted0
thf(fact_4577_sorted0,axiom,
    sorted_wrt_num @ ord_less_eq_num @ nil_num ).

% sorted0
thf(fact_4578_sorted0,axiom,
    sorted_wrt_nat @ ord_less_eq_nat @ nil_nat ).

% sorted0
thf(fact_4579_sorted0,axiom,
    sorted_wrt_int @ ord_less_eq_int @ nil_int ).

% sorted0
thf(fact_4580_sorted__wrt__less__idx,axiom,
    ! [Ns: list_nat,I: nat] :
      ( ( sorted_wrt_nat @ ord_less_nat @ Ns )
     => ( ( ord_less_nat @ I @ ( size_size_list_nat @ Ns ) )
       => ( ord_less_eq_nat @ I @ ( nth_nat @ Ns @ I ) ) ) ) ).

% sorted_wrt_less_idx
thf(fact_4581_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_char,Ws: list_char,P: list_nat > list_int > list_char > list_char > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_size_list_char @ Zs ) )
       => ( ( ( size_size_list_char @ Zs )
            = ( size_size_list_char @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_char @ nil_char )
           => ( ! [X3: nat,Xs2: list_nat,Y2: int,Ys4: list_int,Z4: char,Zs2: list_char,W3: char,Ws2: list_char] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys4 ) )
                 => ( ( ( size_size_list_int @ Ys4 )
                      = ( size_size_list_char @ Zs2 ) )
                   => ( ( ( size_size_list_char @ Zs2 )
                        = ( size_size_list_char @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) @ ( cons_char @ Z4 @ Zs2 ) @ ( cons_char @ W3 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_4582_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_char,Ws: list_nat,P: list_nat > list_int > list_char > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_size_list_char @ Zs ) )
       => ( ( ( size_size_list_char @ Zs )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_char @ nil_nat )
           => ( ! [X3: nat,Xs2: list_nat,Y2: int,Ys4: list_int,Z4: char,Zs2: list_char,W3: nat,Ws2: list_nat] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys4 ) )
                 => ( ( ( size_size_list_int @ Ys4 )
                      = ( size_size_list_char @ Zs2 ) )
                   => ( ( ( size_size_list_char @ Zs2 )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) @ ( cons_char @ Z4 @ Zs2 ) @ ( cons_nat @ W3 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_4583_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_char,Ws: list_int,P: list_nat > list_int > list_char > list_int > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_size_list_char @ Zs ) )
       => ( ( ( size_size_list_char @ Zs )
            = ( size_size_list_int @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_char @ nil_int )
           => ( ! [X3: nat,Xs2: list_nat,Y2: int,Ys4: list_int,Z4: char,Zs2: list_char,W3: int,Ws2: list_int] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys4 ) )
                 => ( ( ( size_size_list_int @ Ys4 )
                      = ( size_size_list_char @ Zs2 ) )
                   => ( ( ( size_size_list_char @ Zs2 )
                        = ( size_size_list_int @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) @ ( cons_char @ Z4 @ Zs2 ) @ ( cons_int @ W3 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_4584_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_char,Ws: list_o,P: list_nat > list_int > list_char > list_o > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_size_list_char @ Zs ) )
       => ( ( ( size_size_list_char @ Zs )
            = ( size_size_list_o @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_char @ nil_o )
           => ( ! [X3: nat,Xs2: list_nat,Y2: int,Ys4: list_int,Z4: char,Zs2: list_char,W3: $o,Ws2: list_o] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys4 ) )
                 => ( ( ( size_size_list_int @ Ys4 )
                      = ( size_size_list_char @ Zs2 ) )
                   => ( ( ( size_size_list_char @ Zs2 )
                        = ( size_size_list_o @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) @ ( cons_char @ Z4 @ Zs2 ) @ ( cons_o @ W3 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_4585_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_nat,Ws: list_char,P: list_nat > list_int > list_nat > list_char > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( ( size_size_list_nat @ Zs )
            = ( size_size_list_char @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_nat @ nil_char )
           => ( ! [X3: nat,Xs2: list_nat,Y2: int,Ys4: list_int,Z4: nat,Zs2: list_nat,W3: char,Ws2: list_char] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys4 ) )
                 => ( ( ( size_size_list_int @ Ys4 )
                      = ( size_size_list_nat @ Zs2 ) )
                   => ( ( ( size_size_list_nat @ Zs2 )
                        = ( size_size_list_char @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) @ ( cons_nat @ Z4 @ Zs2 ) @ ( cons_char @ W3 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_4586_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_nat,Ws: list_nat,P: list_nat > list_int > list_nat > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( ( size_size_list_nat @ Zs )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_nat @ nil_nat )
           => ( ! [X3: nat,Xs2: list_nat,Y2: int,Ys4: list_int,Z4: nat,Zs2: list_nat,W3: nat,Ws2: list_nat] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys4 ) )
                 => ( ( ( size_size_list_int @ Ys4 )
                      = ( size_size_list_nat @ Zs2 ) )
                   => ( ( ( size_size_list_nat @ Zs2 )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) @ ( cons_nat @ Z4 @ Zs2 ) @ ( cons_nat @ W3 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_4587_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_nat,Ws: list_int,P: list_nat > list_int > list_nat > list_int > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( ( size_size_list_nat @ Zs )
            = ( size_size_list_int @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_nat @ nil_int )
           => ( ! [X3: nat,Xs2: list_nat,Y2: int,Ys4: list_int,Z4: nat,Zs2: list_nat,W3: int,Ws2: list_int] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys4 ) )
                 => ( ( ( size_size_list_int @ Ys4 )
                      = ( size_size_list_nat @ Zs2 ) )
                   => ( ( ( size_size_list_nat @ Zs2 )
                        = ( size_size_list_int @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) @ ( cons_nat @ Z4 @ Zs2 ) @ ( cons_int @ W3 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_4588_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_nat,Ws: list_o,P: list_nat > list_int > list_nat > list_o > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_size_list_nat @ Zs ) )
       => ( ( ( size_size_list_nat @ Zs )
            = ( size_size_list_o @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_nat @ nil_o )
           => ( ! [X3: nat,Xs2: list_nat,Y2: int,Ys4: list_int,Z4: nat,Zs2: list_nat,W3: $o,Ws2: list_o] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys4 ) )
                 => ( ( ( size_size_list_int @ Ys4 )
                      = ( size_size_list_nat @ Zs2 ) )
                   => ( ( ( size_size_list_nat @ Zs2 )
                        = ( size_size_list_o @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) @ ( cons_nat @ Z4 @ Zs2 ) @ ( cons_o @ W3 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_4589_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_int,Ws: list_char,P: list_nat > list_int > list_int > list_char > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_size_list_int @ Zs ) )
       => ( ( ( size_size_list_int @ Zs )
            = ( size_size_list_char @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_int @ nil_char )
           => ( ! [X3: nat,Xs2: list_nat,Y2: int,Ys4: list_int,Z4: int,Zs2: list_int,W3: char,Ws2: list_char] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys4 ) )
                 => ( ( ( size_size_list_int @ Ys4 )
                      = ( size_size_list_int @ Zs2 ) )
                   => ( ( ( size_size_list_int @ Zs2 )
                        = ( size_size_list_char @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) @ ( cons_int @ Z4 @ Zs2 ) @ ( cons_char @ W3 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_4590_list__induct4,axiom,
    ! [Xs: list_nat,Ys: list_int,Zs: list_int,Ws: list_nat,P: list_nat > list_int > list_int > list_nat > $o] :
      ( ( ( size_size_list_nat @ Xs )
        = ( size_size_list_int @ Ys ) )
     => ( ( ( size_size_list_int @ Ys )
          = ( size_size_list_int @ Zs ) )
       => ( ( ( size_size_list_int @ Zs )
            = ( size_size_list_nat @ Ws ) )
         => ( ( P @ nil_nat @ nil_int @ nil_int @ nil_nat )
           => ( ! [X3: nat,Xs2: list_nat,Y2: int,Ys4: list_int,Z4: int,Zs2: list_int,W3: nat,Ws2: list_nat] :
                  ( ( ( size_size_list_nat @ Xs2 )
                    = ( size_size_list_int @ Ys4 ) )
                 => ( ( ( size_size_list_int @ Ys4 )
                      = ( size_size_list_int @ Zs2 ) )
                   => ( ( ( size_size_list_int @ Zs2 )
                        = ( size_size_list_nat @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys4 @ Zs2 @ Ws2 )
                       => ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_int @ Y2 @ Ys4 ) @ ( cons_int @ Z4 @ Zs2 ) @ ( cons_nat @ W3 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_4591_upto__aux__rec,axiom,
    ( upto_aux
    = ( ^ [I2: int,J3: int,Js: list_int] : ( if_list_int @ ( ord_less_int @ J3 @ I2 ) @ Js @ ( upto_aux @ I2 @ ( minus_minus_int @ J3 @ one_one_int ) @ ( cons_int @ J3 @ Js ) ) ) ) ) ).

% upto_aux_rec
thf(fact_4592_upto__rec__numeral_I4_J,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
       => ( ( upto @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
          = ( cons_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( upto @ ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ one_one_int ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ) ) )
      & ( ~ ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
       => ( ( upto @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
          = nil_int ) ) ) ).

% upto_rec_numeral(4)
thf(fact_4593_upto__rec__numeral_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
       => ( ( upto @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
          = ( cons_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( upto @ ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ one_one_int ) @ ( numeral_numeral_int @ N ) ) ) ) )
      & ( ~ ( ord_less_eq_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
       => ( ( upto @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
          = nil_int ) ) ) ).

% upto_rec_numeral(3)
thf(fact_4594_upto__rec__numeral_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_eq_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
       => ( ( upto @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
          = ( cons_int @ ( numeral_numeral_int @ M ) @ ( upto @ ( plus_plus_int @ ( numeral_numeral_int @ M ) @ one_one_int ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ) ) )
      & ( ~ ( ord_less_eq_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
       => ( ( upto @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
          = nil_int ) ) ) ).

% upto_rec_numeral(2)
thf(fact_4595_Suc__numeral,axiom,
    ! [N: num] :
      ( ( suc @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_nat @ ( plus_plus_num @ N @ one ) ) ) ).

% Suc_numeral
thf(fact_4596_nth__upto,axiom,
    ! [I: int,K: nat,J: int] :
      ( ( ord_less_eq_int @ ( plus_plus_int @ I @ ( semiri1314217659103216013at_int @ K ) ) @ J )
     => ( ( nth_int @ ( upto @ I @ J ) @ K )
        = ( plus_plus_int @ I @ ( semiri1314217659103216013at_int @ K ) ) ) ) ).

% nth_upto
thf(fact_4597_length__upto,axiom,
    ! [I: int,J: int] :
      ( ( size_size_list_int @ ( upto @ I @ J ) )
      = ( nat2 @ ( plus_plus_int @ ( minus_minus_int @ J @ I ) @ one_one_int ) ) ) ).

% length_upto
thf(fact_4598_upto__rec__numeral_I1_J,axiom,
    ! [M: num,N: num] :
      ( ( ( ord_less_eq_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
       => ( ( upto @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
          = ( cons_int @ ( numeral_numeral_int @ M ) @ ( upto @ ( plus_plus_int @ ( numeral_numeral_int @ M ) @ one_one_int ) @ ( numeral_numeral_int @ N ) ) ) ) )
      & ( ~ ( ord_less_eq_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
       => ( ( upto @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
          = nil_int ) ) ) ).

% upto_rec_numeral(1)
thf(fact_4599_num_Osize_I4_J,axiom,
    ( ( size_size_num @ one )
    = zero_zero_nat ) ).

% num.size(4)
thf(fact_4600_sorted__upto,axiom,
    ! [M: int,N: int] : ( sorted_wrt_int @ ord_less_eq_int @ ( upto @ M @ N ) ) ).

% sorted_upto
thf(fact_4601_add__One__commute,axiom,
    ! [N: num] :
      ( ( plus_plus_num @ one @ N )
      = ( plus_plus_num @ N @ one ) ) ).

% add_One_commute
thf(fact_4602_num__induct,axiom,
    ! [P: num > $o,X2: num] :
      ( ( P @ one )
     => ( ! [X3: num] :
            ( ( P @ X3 )
           => ( P @ ( inc @ X3 ) ) )
       => ( P @ X2 ) ) ) ).

% num_induct
thf(fact_4603_le__num__One__iff,axiom,
    ! [X2: num] :
      ( ( ord_less_eq_num @ X2 @ one )
      = ( X2 = one ) ) ).

% le_num_One_iff
thf(fact_4604_numerals_I1_J,axiom,
    ( ( numeral_numeral_nat @ one )
    = one_one_nat ) ).

% numerals(1)
thf(fact_4605_add__One,axiom,
    ! [X2: num] :
      ( ( plus_plus_num @ X2 @ one )
      = ( inc @ X2 ) ) ).

% add_One
thf(fact_4606_numeral__1__eq__Suc__0,axiom,
    ( ( numeral_numeral_nat @ one )
    = ( suc @ zero_zero_nat ) ) ).

% numeral_1_eq_Suc_0
thf(fact_4607_upto__rec1,axiom,
    ! [I: int,J: int] :
      ( ( ord_less_eq_int @ I @ J )
     => ( ( upto @ I @ J )
        = ( cons_int @ I @ ( upto @ ( plus_plus_int @ I @ one_one_int ) @ J ) ) ) ) ).

% upto_rec1
thf(fact_4608_upto_Osimps,axiom,
    ( upto
    = ( ^ [I2: int,J3: int] : ( if_list_int @ ( ord_less_eq_int @ I2 @ J3 ) @ ( cons_int @ I2 @ ( upto @ ( plus_plus_int @ I2 @ one_one_int ) @ J3 ) ) @ nil_int ) ) ) ).

% upto.simps
thf(fact_4609_upto_Oelims,axiom,
    ! [X2: int,Xa: int,Y: list_int] :
      ( ( ( upto @ X2 @ Xa )
        = Y )
     => ( ( ( ord_less_eq_int @ X2 @ Xa )
         => ( Y
            = ( cons_int @ X2 @ ( upto @ ( plus_plus_int @ X2 @ one_one_int ) @ Xa ) ) ) )
        & ( ~ ( ord_less_eq_int @ X2 @ Xa )
         => ( Y = nil_int ) ) ) ) ).

% upto.elims
thf(fact_4610_Suc__nat__number__of__add,axiom,
    ! [V: num,N: nat] :
      ( ( suc @ ( plus_plus_nat @ ( numeral_numeral_nat @ V ) @ N ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ ( plus_plus_num @ V @ one ) ) @ N ) ) ).

% Suc_nat_number_of_add
thf(fact_4611_neg__zmod__mult__2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( modulo_modulo_int @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) )
        = ( minus_minus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( modulo_modulo_int @ ( plus_plus_int @ B @ one_one_int ) @ A ) ) @ one_one_int ) ) ) ).

% neg_zmod_mult_2
thf(fact_4612_verit__eq__simplify_I8_J,axiom,
    ! [X22: num,Y22: num] :
      ( ( ( bit0 @ X22 )
        = ( bit0 @ Y22 ) )
      = ( X22 = Y22 ) ) ).

% verit_eq_simplify(8)
thf(fact_4613_semiring__norm_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_num @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( bit0 @ ( plus_plus_num @ M @ N ) ) ) ).

% semiring_norm(6)
thf(fact_4614_semiring__norm_I2_J,axiom,
    ( ( plus_plus_num @ one @ one )
    = ( bit0 @ one ) ) ).

% semiring_norm(2)
thf(fact_4615_num__double,axiom,
    ! [N: num] :
      ( ( times_times_num @ ( bit0 @ one ) @ N )
      = ( bit0 @ N ) ) ).

% num_double
thf(fact_4616_add__2__eq__Suc_H,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( suc @ ( suc @ N ) ) ) ).

% add_2_eq_Suc'
thf(fact_4617_add__2__eq__Suc,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
      = ( suc @ ( suc @ N ) ) ) ).

% add_2_eq_Suc
thf(fact_4618_Suc__1,axiom,
    ( ( suc @ one_one_nat )
    = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ).

% Suc_1
thf(fact_4619_add__self__div__2,axiom,
    ! [M: nat] :
      ( ( divide_divide_nat @ ( plus_plus_nat @ M @ M ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = M ) ).

% add_self_div_2
thf(fact_4620_not__mod2__eq__Suc__0__eq__0,axiom,
    ! [N: nat] :
      ( ( ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
       != ( suc @ zero_zero_nat ) )
      = ( ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = zero_zero_nat ) ) ).

% not_mod2_eq_Suc_0_eq_0
thf(fact_4621_add__self__mod__2,axiom,
    ! [M: nat] :
      ( ( modulo_modulo_nat @ ( plus_plus_nat @ M @ M ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = zero_zero_nat ) ).

% add_self_mod_2
thf(fact_4622_half__nonnegative__int__iff,axiom,
    ! [K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( divide_divide_int @ K @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% half_nonnegative_int_iff
thf(fact_4623_half__negative__int__iff,axiom,
    ! [K: int] :
      ( ( ord_less_int @ ( divide_divide_int @ K @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ zero_zero_int )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% half_negative_int_iff
thf(fact_4624_mod2__gr__0,axiom,
    ! [M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( modulo_modulo_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( ( modulo_modulo_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = one_one_nat ) ) ).

% mod2_gr_0
thf(fact_4625_verit__eq__simplify_I10_J,axiom,
    ! [X22: num] :
      ( one
     != ( bit0 @ X22 ) ) ).

% verit_eq_simplify(10)
thf(fact_4626_inc_Osimps_I1_J,axiom,
    ( ( inc @ one )
    = ( bit0 @ one ) ) ).

% inc.simps(1)
thf(fact_4627_num_Osize_I5_J,axiom,
    ! [X22: num] :
      ( ( size_size_num @ ( bit0 @ X22 ) )
      = ( plus_plus_nat @ ( size_size_num @ X22 ) @ ( suc @ zero_zero_nat ) ) ) ).

% num.size(5)
thf(fact_4628_numeral__2__eq__2,axiom,
    ( ( numeral_numeral_nat @ ( bit0 @ one ) )
    = ( suc @ ( suc @ zero_zero_nat ) ) ) ).

% numeral_2_eq_2
thf(fact_4629_nat__1__add__1,axiom,
    ( ( plus_plus_nat @ one_one_nat @ one_one_nat )
    = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ).

% nat_1_add_1
thf(fact_4630_power2__nat__le__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% power2_nat_le_imp_le
thf(fact_4631_power2__nat__le__eq__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% power2_nat_le_eq_le
thf(fact_4632_self__le__ge2__pow,axiom,
    ! [K: nat,M: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K )
     => ( ord_less_eq_nat @ M @ ( power_power_nat @ K @ M ) ) ) ).

% self_le_ge2_pow
thf(fact_4633_less__2__cases__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( ( N = zero_zero_nat )
        | ( N
          = ( suc @ zero_zero_nat ) ) ) ) ).

% less_2_cases_iff
thf(fact_4634_less__2__cases,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
     => ( ( N = zero_zero_nat )
        | ( N
          = ( suc @ zero_zero_nat ) ) ) ) ).

% less_2_cases
thf(fact_4635_nat__induct2,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ( P @ one_one_nat )
       => ( ! [N2: nat] :
              ( ( P @ N2 )
             => ( P @ ( plus_plus_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct2
thf(fact_4636_nat__2,axiom,
    ( ( nat2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
    = ( suc @ ( suc @ zero_zero_nat ) ) ) ).

% nat_2
thf(fact_4637_diff__le__diff__pow,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ M @ N ) @ ( minus_minus_nat @ ( power_power_nat @ K @ M ) @ ( power_power_nat @ K @ N ) ) ) ) ).

% diff_le_diff_pow
thf(fact_4638_not__exp__less__eq__0__int,axiom,
    ! [N: nat] :
      ~ ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ zero_zero_int ) ).

% not_exp_less_eq_0_int
thf(fact_4639_nat__bit__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N2: nat] :
            ( ( P @ N2 )
           => ( ( ord_less_nat @ zero_zero_nat @ N2 )
             => ( P @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) ) )
       => ( ! [N2: nat] :
              ( ( P @ N2 )
             => ( P @ ( suc @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N2 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_bit_induct
thf(fact_4640_div__2__gt__zero,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ N )
     => ( ord_less_nat @ zero_zero_nat @ ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% div_2_gt_zero
thf(fact_4641_Suc__n__div__2__gt__zero,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ zero_zero_nat @ ( divide_divide_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% Suc_n_div_2_gt_zero
thf(fact_4642_minus__1__div__exp__eq__int,axiom,
    ! [N: nat] :
      ( ( divide_divide_int @ ( uminus_uminus_int @ one_one_int ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
      = ( uminus_uminus_int @ one_one_int ) ) ).

% minus_1_div_exp_eq_int
thf(fact_4643_ex__power__ivl2,axiom,
    ! [B: nat,K: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B )
     => ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K )
       => ? [N2: nat] :
            ( ( ord_less_nat @ ( power_power_nat @ B @ N2 ) @ K )
            & ( ord_less_eq_nat @ K @ ( power_power_nat @ B @ ( plus_plus_nat @ N2 @ one_one_nat ) ) ) ) ) ) ).

% ex_power_ivl2
thf(fact_4644_ex__power__ivl1,axiom,
    ! [B: nat,K: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B )
     => ( ( ord_less_eq_nat @ one_one_nat @ K )
       => ? [N2: nat] :
            ( ( ord_less_eq_nat @ ( power_power_nat @ B @ N2 ) @ K )
            & ( ord_less_nat @ K @ ( power_power_nat @ B @ ( plus_plus_nat @ N2 @ one_one_nat ) ) ) ) ) ) ).

% ex_power_ivl1
thf(fact_4645_int__bit__induct,axiom,
    ! [P: int > $o,K: int] :
      ( ( P @ zero_zero_int )
     => ( ( P @ ( uminus_uminus_int @ one_one_int ) )
       => ( ! [K3: int] :
              ( ( P @ K3 )
             => ( ( K3 != zero_zero_int )
               => ( P @ ( times_times_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) )
         => ( ! [K3: int] :
                ( ( P @ K3 )
               => ( ( K3
                   != ( uminus_uminus_int @ one_one_int ) )
                 => ( P @ ( plus_plus_int @ one_one_int @ ( times_times_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) )
           => ( P @ K ) ) ) ) ) ).

% int_bit_induct
thf(fact_4646_pos__zdiv__mult__2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( divide_divide_int @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) )
        = ( divide_divide_int @ B @ A ) ) ) ).

% pos_zdiv_mult_2
thf(fact_4647_neg__zdiv__mult__2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ A @ zero_zero_int )
     => ( ( divide_divide_int @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) )
        = ( divide_divide_int @ ( plus_plus_int @ B @ one_one_int ) @ A ) ) ) ).

% neg_zdiv_mult_2
thf(fact_4648_pos__zmod__mult__2,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ A )
     => ( ( modulo_modulo_int @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) )
        = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( modulo_modulo_int @ B @ A ) ) ) ) ) ).

% pos_zmod_mult_2
thf(fact_4649_unset__bit__nonnegative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se4203085406695923979it_int @ N @ K ) )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% unset_bit_nonnegative_int_iff
thf(fact_4650_set__bit__nonnegative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se7879613467334960850it_int @ N @ K ) )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% set_bit_nonnegative_int_iff
thf(fact_4651_flip__bit__nonnegative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se2159334234014336723it_int @ N @ K ) )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% flip_bit_nonnegative_int_iff
thf(fact_4652_unset__bit__negative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_se4203085406695923979it_int @ N @ K ) @ zero_zero_int )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% unset_bit_negative_int_iff
thf(fact_4653_set__bit__negative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_se7879613467334960850it_int @ N @ K ) @ zero_zero_int )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% set_bit_negative_int_iff
thf(fact_4654_flip__bit__negative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_se2159334234014336723it_int @ N @ K ) @ zero_zero_int )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% flip_bit_negative_int_iff
thf(fact_4655_signed__take__bit__add,axiom,
    ! [N: nat,K: int,L: int] :
      ( ( bit_ri631733984087533419it_int @ N @ ( plus_plus_int @ ( bit_ri631733984087533419it_int @ N @ K ) @ ( bit_ri631733984087533419it_int @ N @ L ) ) )
      = ( bit_ri631733984087533419it_int @ N @ ( plus_plus_int @ K @ L ) ) ) ).

% signed_take_bit_add
thf(fact_4656_unset__bit__nat__def,axiom,
    ( bit_se4205575877204974255it_nat
    = ( ^ [M2: nat,N3: nat] : ( nat2 @ ( bit_se4203085406695923979it_int @ M2 @ ( semiri1314217659103216013at_int @ N3 ) ) ) ) ) ).

% unset_bit_nat_def
thf(fact_4657_unset__bit__less__eq,axiom,
    ! [N: nat,K: int] : ( ord_less_eq_int @ ( bit_se4203085406695923979it_int @ N @ K ) @ K ) ).

% unset_bit_less_eq
thf(fact_4658_set__bit__greater__eq,axiom,
    ! [K: int,N: nat] : ( ord_less_eq_int @ K @ ( bit_se7879613467334960850it_int @ N @ K ) ) ).

% set_bit_greater_eq
thf(fact_4659_signed__take__bit__int__greater__eq__self__iff,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_eq_int @ K @ ( bit_ri631733984087533419it_int @ N @ K ) )
      = ( ord_less_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ).

% signed_take_bit_int_greater_eq_self_iff
thf(fact_4660_signed__take__bit__int__less__self__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_ri631733984087533419it_int @ N @ K ) @ K )
      = ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ K ) ) ).

% signed_take_bit_int_less_self_iff
thf(fact_4661_signed__take__bit__int__greater__eq__minus__exp,axiom,
    ! [N: nat,K: int] : ( ord_less_eq_int @ ( uminus_uminus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) @ ( bit_ri631733984087533419it_int @ N @ K ) ) ).

% signed_take_bit_int_greater_eq_minus_exp
thf(fact_4662_signed__take__bit__int__less__eq__self__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ ( bit_ri631733984087533419it_int @ N @ K ) @ K )
      = ( ord_less_eq_int @ ( uminus_uminus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) @ K ) ) ).

% signed_take_bit_int_less_eq_self_iff
thf(fact_4663_signed__take__bit__int__less__eq,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ K )
     => ( ord_less_eq_int @ ( bit_ri631733984087533419it_int @ N @ K ) @ ( minus_minus_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( suc @ N ) ) ) ) ) ).

% signed_take_bit_int_less_eq
thf(fact_4664_signed__take__bit__int__eq__self__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ( bit_ri631733984087533419it_int @ N @ K )
        = K )
      = ( ( ord_less_eq_int @ ( uminus_uminus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) @ K )
        & ( ord_less_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% signed_take_bit_int_eq_self_iff
thf(fact_4665_signed__take__bit__int__eq__self,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ ( uminus_uminus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) @ K )
     => ( ( ord_less_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
       => ( ( bit_ri631733984087533419it_int @ N @ K )
          = K ) ) ) ).

% signed_take_bit_int_eq_self
thf(fact_4666_signed__take__bit__int__greater__eq,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_int @ K @ ( uminus_uminus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) )
     => ( ord_less_eq_int @ ( plus_plus_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( suc @ N ) ) ) @ ( bit_ri631733984087533419it_int @ N @ K ) ) ) ).

% signed_take_bit_int_greater_eq
thf(fact_4667_binomial__code,axiom,
    ( binomial
    = ( ^ [N3: nat,K2: nat] : ( if_nat @ ( ord_less_nat @ N3 @ K2 ) @ zero_zero_nat @ ( if_nat @ ( ord_less_nat @ N3 @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K2 ) ) @ ( binomial @ N3 @ ( minus_minus_nat @ N3 @ K2 ) ) @ ( divide_divide_nat @ ( set_fo2584398358068434914at_nat @ times_times_nat @ ( plus_plus_nat @ ( minus_minus_nat @ N3 @ K2 ) @ one_one_nat ) @ N3 @ one_one_nat ) @ ( semiri1408675320244567234ct_nat @ K2 ) ) ) ) ) ) ).

% binomial_code
thf(fact_4668_signed__take__bit__Suc__minus__bit1,axiom,
    ! [N: nat,K: num] :
      ( ( bit_ri631733984087533419it_int @ ( suc @ N ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ K ) ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( bit_ri631733984087533419it_int @ N @ ( minus_minus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) @ one_one_int ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ one_one_int ) ) ).

% signed_take_bit_Suc_minus_bit1
thf(fact_4669_concat__bit__Suc,axiom,
    ! [N: nat,K: int,L: int] :
      ( ( bit_concat_bit @ ( suc @ N ) @ K @ L )
      = ( plus_plus_int @ ( modulo_modulo_int @ K @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_concat_bit @ N @ ( divide_divide_int @ K @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ L ) ) ) ) ).

% concat_bit_Suc
thf(fact_4670_verit__eq__simplify_I9_J,axiom,
    ! [X32: num,Y32: num] :
      ( ( ( bit1 @ X32 )
        = ( bit1 @ Y32 ) )
      = ( X32 = Y32 ) ) ).

% verit_eq_simplify(9)
thf(fact_4671_nat__dvd__1__iff__1,axiom,
    ! [M: nat] :
      ( ( dvd_dvd_nat @ M @ one_one_nat )
      = ( M = one_one_nat ) ) ).

% nat_dvd_1_iff_1
thf(fact_4672_int__dvd__int__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
      = ( dvd_dvd_nat @ M @ N ) ) ).

% int_dvd_int_iff
thf(fact_4673_dvd__1__iff__1,axiom,
    ! [M: nat] :
      ( ( dvd_dvd_nat @ M @ ( suc @ zero_zero_nat ) )
      = ( M
        = ( suc @ zero_zero_nat ) ) ) ).

% dvd_1_iff_1
thf(fact_4674_dvd__1__left,axiom,
    ! [K: nat] : ( dvd_dvd_nat @ ( suc @ zero_zero_nat ) @ K ) ).

% dvd_1_left
thf(fact_4675_nat__mult__dvd__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
      = ( ( K = zero_zero_nat )
        | ( dvd_dvd_nat @ M @ N ) ) ) ).

% nat_mult_dvd_cancel_disj
thf(fact_4676_zdvd1__eq,axiom,
    ! [X2: int] :
      ( ( dvd_dvd_int @ X2 @ one_one_int )
      = ( ( abs_abs_int @ X2 )
        = one_one_int ) ) ).

% zdvd1_eq
thf(fact_4677_binomial__n__n,axiom,
    ! [N: nat] :
      ( ( binomial @ N @ N )
      = one_one_nat ) ).

% binomial_n_n
thf(fact_4678_concat__bit__0,axiom,
    ! [K: int,L: int] :
      ( ( bit_concat_bit @ zero_zero_nat @ K @ L )
      = L ) ).

% concat_bit_0
thf(fact_4679_concat__bit__of__zero__2,axiom,
    ! [N: nat,K: int] :
      ( ( bit_concat_bit @ N @ K @ zero_zero_int )
      = ( bit_se2923211474154528505it_int @ N @ K ) ) ).

% concat_bit_of_zero_2
thf(fact_4680_binomial__1,axiom,
    ! [N: nat] :
      ( ( binomial @ N @ ( suc @ zero_zero_nat ) )
      = N ) ).

% binomial_1
thf(fact_4681_binomial__0__Suc,axiom,
    ! [K: nat] :
      ( ( binomial @ zero_zero_nat @ ( suc @ K ) )
      = zero_zero_nat ) ).

% binomial_0_Suc
thf(fact_4682_binomial__eq__0__iff,axiom,
    ! [N: nat,K: nat] :
      ( ( ( binomial @ N @ K )
        = zero_zero_nat )
      = ( ord_less_nat @ N @ K ) ) ).

% binomial_eq_0_iff
thf(fact_4683_binomial__Suc__Suc,axiom,
    ! [N: nat,K: nat] :
      ( ( binomial @ ( suc @ N ) @ ( suc @ K ) )
      = ( plus_plus_nat @ ( binomial @ N @ K ) @ ( binomial @ N @ ( suc @ K ) ) ) ) ).

% binomial_Suc_Suc
thf(fact_4684_semiring__norm_I7_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_num @ ( bit0 @ M ) @ ( bit1 @ N ) )
      = ( bit1 @ ( plus_plus_num @ M @ N ) ) ) ).

% semiring_norm(7)
thf(fact_4685_semiring__norm_I9_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_num @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( bit1 @ ( plus_plus_num @ M @ N ) ) ) ).

% semiring_norm(9)
thf(fact_4686_binomial__n__0,axiom,
    ! [N: nat] :
      ( ( binomial @ N @ zero_zero_nat )
      = one_one_nat ) ).

% binomial_n_0
thf(fact_4687_dvd__nat__abs__iff,axiom,
    ! [N: nat,K: int] :
      ( ( dvd_dvd_nat @ N @ ( nat2 @ ( abs_abs_int @ K ) ) )
      = ( dvd_dvd_int @ ( semiri1314217659103216013at_int @ N ) @ K ) ) ).

% dvd_nat_abs_iff
thf(fact_4688_nat__abs__dvd__iff,axiom,
    ! [K: int,N: nat] :
      ( ( dvd_dvd_nat @ ( nat2 @ ( abs_abs_int @ K ) ) @ N )
      = ( dvd_dvd_int @ K @ ( semiri1314217659103216013at_int @ N ) ) ) ).

% nat_abs_dvd_iff
thf(fact_4689_concat__bit__nonnegative__iff,axiom,
    ! [N: nat,K: int,L: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_concat_bit @ N @ K @ L ) )
      = ( ord_less_eq_int @ zero_zero_int @ L ) ) ).

% concat_bit_nonnegative_iff
thf(fact_4690_concat__bit__negative__iff,axiom,
    ! [N: nat,K: int,L: int] :
      ( ( ord_less_int @ ( bit_concat_bit @ N @ K @ L ) @ zero_zero_int )
      = ( ord_less_int @ L @ zero_zero_int ) ) ).

% concat_bit_negative_iff
thf(fact_4691_zero__less__binomial__iff,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( binomial @ N @ K ) )
      = ( ord_less_eq_nat @ K @ N ) ) ).

% zero_less_binomial_iff
thf(fact_4692_semiring__norm_I3_J,axiom,
    ! [N: num] :
      ( ( plus_plus_num @ one @ ( bit0 @ N ) )
      = ( bit1 @ N ) ) ).

% semiring_norm(3)
thf(fact_4693_semiring__norm_I4_J,axiom,
    ! [N: num] :
      ( ( plus_plus_num @ one @ ( bit1 @ N ) )
      = ( bit0 @ ( plus_plus_num @ N @ one ) ) ) ).

% semiring_norm(4)
thf(fact_4694_semiring__norm_I5_J,axiom,
    ! [M: num] :
      ( ( plus_plus_num @ ( bit0 @ M ) @ one )
      = ( bit1 @ M ) ) ).

% semiring_norm(5)
thf(fact_4695_semiring__norm_I8_J,axiom,
    ! [M: num] :
      ( ( plus_plus_num @ ( bit1 @ M ) @ one )
      = ( bit0 @ ( plus_plus_num @ M @ one ) ) ) ).

% semiring_norm(8)
thf(fact_4696_semiring__norm_I10_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_num @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( bit0 @ ( plus_plus_num @ ( plus_plus_num @ M @ N ) @ one ) ) ) ).

% semiring_norm(10)
thf(fact_4697_semiring__norm_I16_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_num @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( bit1 @ ( plus_plus_num @ ( plus_plus_num @ M @ N ) @ ( bit0 @ ( times_times_num @ M @ N ) ) ) ) ) ).

% semiring_norm(16)
thf(fact_4698_odd__Suc__minus__one,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) )
        = N ) ) ).

% odd_Suc_minus_one
thf(fact_4699_even__diff__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ M @ N ) )
      = ( ( ord_less_nat @ M @ N )
        | ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( plus_plus_nat @ M @ N ) ) ) ) ).

% even_diff_nat
thf(fact_4700_Suc__mod__eq__add3__mod__numeral,axiom,
    ! [M: nat,V: num] :
      ( ( modulo_modulo_nat @ ( suc @ ( suc @ ( suc @ M ) ) ) @ ( numeral_numeral_nat @ V ) )
      = ( modulo_modulo_nat @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ M ) @ ( numeral_numeral_nat @ V ) ) ) ).

% Suc_mod_eq_add3_mod_numeral
thf(fact_4701_mod__Suc__eq__mod__add3,axiom,
    ! [M: nat,N: nat] :
      ( ( modulo_modulo_nat @ M @ ( suc @ ( suc @ ( suc @ N ) ) ) )
      = ( modulo_modulo_nat @ M @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ N ) ) ) ).

% mod_Suc_eq_mod_add3
thf(fact_4702_Suc__div__eq__add3__div__numeral,axiom,
    ! [M: nat,V: num] :
      ( ( divide_divide_nat @ ( suc @ ( suc @ ( suc @ M ) ) ) @ ( numeral_numeral_nat @ V ) )
      = ( divide_divide_nat @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ M ) @ ( numeral_numeral_nat @ V ) ) ) ).

% Suc_div_eq_add3_div_numeral
thf(fact_4703_div__Suc__eq__div__add3,axiom,
    ! [M: nat,N: nat] :
      ( ( divide_divide_nat @ M @ ( suc @ ( suc @ ( suc @ N ) ) ) )
      = ( divide_divide_nat @ M @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ N ) ) ) ).

% div_Suc_eq_div_add3
thf(fact_4704_odd__two__times__div__two__nat,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
        = ( minus_minus_nat @ N @ one_one_nat ) ) ) ).

% odd_two_times_div_two_nat
thf(fact_4705_zmod__numeral__Bit1,axiom,
    ! [V: num,W2: num] :
      ( ( modulo_modulo_int @ ( numeral_numeral_int @ ( bit1 @ V ) ) @ ( numeral_numeral_int @ ( bit0 @ W2 ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( modulo_modulo_int @ ( numeral_numeral_int @ V ) @ ( numeral_numeral_int @ W2 ) ) ) @ one_one_int ) ) ).

% zmod_numeral_Bit1
thf(fact_4706_signed__take__bit__Suc__bit1,axiom,
    ! [N: nat,K: num] :
      ( ( bit_ri631733984087533419it_int @ ( suc @ N ) @ ( numeral_numeral_int @ ( bit1 @ K ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( bit_ri631733984087533419it_int @ N @ ( numeral_numeral_int @ K ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ one_one_int ) ) ).

% signed_take_bit_Suc_bit1
thf(fact_4707_take__bit__nat__less__eq__self,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ ( bit_se2925701944663578781it_nat @ N @ M ) @ M ) ).

% take_bit_nat_less_eq_self
thf(fact_4708_take__bit__tightened__less__eq__nat,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( bit_se2925701944663578781it_nat @ M @ Q2 ) @ ( bit_se2925701944663578781it_nat @ N @ Q2 ) ) ) ).

% take_bit_tightened_less_eq_nat
thf(fact_4709_choose__one,axiom,
    ! [N: nat] :
      ( ( binomial @ N @ one_one_nat )
      = N ) ).

% choose_one
thf(fact_4710_verit__eq__simplify_I14_J,axiom,
    ! [X22: num,X32: num] :
      ( ( bit0 @ X22 )
     != ( bit1 @ X32 ) ) ).

% verit_eq_simplify(14)
thf(fact_4711_verit__eq__simplify_I12_J,axiom,
    ! [X32: num] :
      ( one
     != ( bit1 @ X32 ) ) ).

% verit_eq_simplify(12)
thf(fact_4712_gcd__nat_Oextremum,axiom,
    ! [A: nat] : ( dvd_dvd_nat @ A @ zero_zero_nat ) ).

% gcd_nat.extremum
thf(fact_4713_gcd__nat_Oextremum__strict,axiom,
    ! [A: nat] :
      ~ ( ( dvd_dvd_nat @ zero_zero_nat @ A )
        & ( zero_zero_nat != A ) ) ).

% gcd_nat.extremum_strict
thf(fact_4714_gcd__nat_Oextremum__unique,axiom,
    ! [A: nat] :
      ( ( dvd_dvd_nat @ zero_zero_nat @ A )
      = ( A = zero_zero_nat ) ) ).

% gcd_nat.extremum_unique
thf(fact_4715_gcd__nat_Onot__eq__extremum,axiom,
    ! [A: nat] :
      ( ( A != zero_zero_nat )
      = ( ( dvd_dvd_nat @ A @ zero_zero_nat )
        & ( A != zero_zero_nat ) ) ) ).

% gcd_nat.not_eq_extremum
thf(fact_4716_gcd__nat_Oextremum__uniqueI,axiom,
    ! [A: nat] :
      ( ( dvd_dvd_nat @ zero_zero_nat @ A )
     => ( A = zero_zero_nat ) ) ).

% gcd_nat.extremum_uniqueI
thf(fact_4717_dvd__diff__nat,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ K @ M )
     => ( ( dvd_dvd_nat @ K @ N )
       => ( dvd_dvd_nat @ K @ ( minus_minus_nat @ M @ N ) ) ) ) ).

% dvd_diff_nat
thf(fact_4718_uminus__dvd__conv_I2_J,axiom,
    ( dvd_dvd_int
    = ( ^ [D4: int,T2: int] : ( dvd_dvd_int @ D4 @ ( uminus_uminus_int @ T2 ) ) ) ) ).

% uminus_dvd_conv(2)
thf(fact_4719_uminus__dvd__conv_I1_J,axiom,
    ( dvd_dvd_int
    = ( ^ [D4: int] : ( dvd_dvd_int @ ( uminus_uminus_int @ D4 ) ) ) ) ).

% uminus_dvd_conv(1)
thf(fact_4720_zdvd__zdiffD,axiom,
    ! [K: int,M: int,N: int] :
      ( ( dvd_dvd_int @ K @ ( minus_minus_int @ M @ N ) )
     => ( ( dvd_dvd_int @ K @ N )
       => ( dvd_dvd_int @ K @ M ) ) ) ).

% zdvd_zdiffD
thf(fact_4721_zdvd__antisym__abs,axiom,
    ! [A: int,B: int] :
      ( ( dvd_dvd_int @ A @ B )
     => ( ( dvd_dvd_int @ B @ A )
       => ( ( abs_abs_int @ A )
          = ( abs_abs_int @ B ) ) ) ) ).

% zdvd_antisym_abs
thf(fact_4722_take__bit__nat__eq,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ( ( bit_se2925701944663578781it_nat @ N @ ( nat2 @ K ) )
        = ( nat2 @ ( bit_se2923211474154528505it_int @ N @ K ) ) ) ) ).

% take_bit_nat_eq
thf(fact_4723_nat__take__bit__eq,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ( ( nat2 @ ( bit_se2923211474154528505it_int @ N @ K ) )
        = ( bit_se2925701944663578781it_nat @ N @ ( nat2 @ K ) ) ) ) ).

% nat_take_bit_eq
thf(fact_4724_concat__bit__assoc,axiom,
    ! [N: nat,K: int,M: nat,L: int,R: int] :
      ( ( bit_concat_bit @ N @ K @ ( bit_concat_bit @ M @ L @ R ) )
      = ( bit_concat_bit @ ( plus_plus_nat @ M @ N ) @ ( bit_concat_bit @ N @ K @ L ) @ R ) ) ).

% concat_bit_assoc
thf(fact_4725_binomial__eq__0,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ N @ K )
     => ( ( binomial @ N @ K )
        = zero_zero_nat ) ) ).

% binomial_eq_0
thf(fact_4726_binomial__symmetric,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( binomial @ N @ K )
        = ( binomial @ N @ ( minus_minus_nat @ N @ K ) ) ) ) ).

% binomial_symmetric
thf(fact_4727_take__bit__tightened__less__eq__int,axiom,
    ! [M: nat,N: nat,K: int] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_int @ ( bit_se2923211474154528505it_int @ M @ K ) @ ( bit_se2923211474154528505it_int @ N @ K ) ) ) ).

% take_bit_tightened_less_eq_int
thf(fact_4728_take__bit__int__less__eq__self__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ ( bit_se2923211474154528505it_int @ N @ K ) @ K )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% take_bit_int_less_eq_self_iff
thf(fact_4729_take__bit__nonnegative,axiom,
    ! [N: nat,K: int] : ( ord_less_eq_int @ zero_zero_int @ ( bit_se2923211474154528505it_int @ N @ K ) ) ).

% take_bit_nonnegative
thf(fact_4730_not__take__bit__negative,axiom,
    ! [N: nat,K: int] :
      ~ ( ord_less_int @ ( bit_se2923211474154528505it_int @ N @ K ) @ zero_zero_int ) ).

% not_take_bit_negative
thf(fact_4731_take__bit__int__greater__self__iff,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_int @ K @ ( bit_se2923211474154528505it_int @ N @ K ) )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% take_bit_int_greater_self_iff
thf(fact_4732_choose__mult__lemma,axiom,
    ! [M: nat,R: nat,K: nat] :
      ( ( times_times_nat @ ( binomial @ ( plus_plus_nat @ ( plus_plus_nat @ M @ R ) @ K ) @ ( plus_plus_nat @ M @ K ) ) @ ( binomial @ ( plus_plus_nat @ M @ K ) @ K ) )
      = ( times_times_nat @ ( binomial @ ( plus_plus_nat @ ( plus_plus_nat @ M @ R ) @ K ) @ K ) @ ( binomial @ ( plus_plus_nat @ M @ R ) @ M ) ) ) ).

% choose_mult_lemma
thf(fact_4733_num_Oexhaust,axiom,
    ! [Y: num] :
      ( ( Y != one )
     => ( ! [X23: num] :
            ( Y
           != ( bit0 @ X23 ) )
       => ~ ! [X33: num] :
              ( Y
             != ( bit1 @ X33 ) ) ) ) ).

% num.exhaust
thf(fact_4734_binomial__le__pow,axiom,
    ! [R: nat,N: nat] :
      ( ( ord_less_eq_nat @ R @ N )
     => ( ord_less_eq_nat @ ( binomial @ N @ R ) @ ( power_power_nat @ N @ R ) ) ) ).

% binomial_le_pow
thf(fact_4735_dvd__pos__nat,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( dvd_dvd_nat @ M @ N )
       => ( ord_less_nat @ zero_zero_nat @ M ) ) ) ).

% dvd_pos_nat
thf(fact_4736_nat__dvd__not__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ M @ N )
       => ~ ( dvd_dvd_nat @ N @ M ) ) ) ).

% nat_dvd_not_less
thf(fact_4737_dvd__minus__self,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_nat @ M @ ( minus_minus_nat @ N @ M ) )
      = ( ( ord_less_nat @ N @ M )
        | ( dvd_dvd_nat @ M @ N ) ) ) ).

% dvd_minus_self
thf(fact_4738_zdvd__antisym__nonneg,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ M )
     => ( ( ord_less_eq_int @ zero_zero_int @ N )
       => ( ( dvd_dvd_int @ M @ N )
         => ( ( dvd_dvd_int @ N @ M )
           => ( M = N ) ) ) ) ) ).

% zdvd_antisym_nonneg
thf(fact_4739_zdvd__not__zless,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_int @ zero_zero_int @ M )
     => ( ( ord_less_int @ M @ N )
       => ~ ( dvd_dvd_int @ N @ M ) ) ) ).

% zdvd_not_zless
thf(fact_4740_less__eq__dvd__minus,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( dvd_dvd_nat @ M @ N )
        = ( dvd_dvd_nat @ M @ ( minus_minus_nat @ N @ M ) ) ) ) ).

% less_eq_dvd_minus
thf(fact_4741_dvd__diffD1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ K @ ( minus_minus_nat @ M @ N ) )
     => ( ( dvd_dvd_nat @ K @ M )
       => ( ( ord_less_eq_nat @ N @ M )
         => ( dvd_dvd_nat @ K @ N ) ) ) ) ).

% dvd_diffD1
thf(fact_4742_dvd__diffD,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ K @ ( minus_minus_nat @ M @ N ) )
     => ( ( dvd_dvd_nat @ K @ N )
       => ( ( ord_less_eq_nat @ N @ M )
         => ( dvd_dvd_nat @ K @ M ) ) ) ) ).

% dvd_diffD
thf(fact_4743_zdvd__mult__cancel,axiom,
    ! [K: int,M: int,N: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ K @ M ) @ ( times_times_int @ K @ N ) )
     => ( ( K != zero_zero_int )
       => ( dvd_dvd_int @ M @ N ) ) ) ).

% zdvd_mult_cancel
thf(fact_4744_zdvd__mono,axiom,
    ! [K: int,M: int,T: int] :
      ( ( K != zero_zero_int )
     => ( ( dvd_dvd_int @ M @ T )
        = ( dvd_dvd_int @ ( times_times_int @ K @ M ) @ ( times_times_int @ K @ T ) ) ) ) ).

% zdvd_mono
thf(fact_4745_bezout__add__nat,axiom,
    ! [A: nat,B: nat] :
    ? [D5: nat,X3: nat,Y2: nat] :
      ( ( dvd_dvd_nat @ D5 @ A )
      & ( dvd_dvd_nat @ D5 @ B )
      & ( ( ( times_times_nat @ A @ X3 )
          = ( plus_plus_nat @ ( times_times_nat @ B @ Y2 ) @ D5 ) )
        | ( ( times_times_nat @ B @ X3 )
          = ( plus_plus_nat @ ( times_times_nat @ A @ Y2 ) @ D5 ) ) ) ) ).

% bezout_add_nat
thf(fact_4746_bezout__lemma__nat,axiom,
    ! [D: nat,A: nat,B: nat,X2: nat,Y: nat] :
      ( ( dvd_dvd_nat @ D @ A )
     => ( ( dvd_dvd_nat @ D @ B )
       => ( ( ( ( times_times_nat @ A @ X2 )
              = ( plus_plus_nat @ ( times_times_nat @ B @ Y ) @ D ) )
            | ( ( times_times_nat @ B @ X2 )
              = ( plus_plus_nat @ ( times_times_nat @ A @ Y ) @ D ) ) )
         => ? [X3: nat,Y2: nat] :
              ( ( dvd_dvd_nat @ D @ A )
              & ( dvd_dvd_nat @ D @ ( plus_plus_nat @ A @ B ) )
              & ( ( ( times_times_nat @ A @ X3 )
                  = ( plus_plus_nat @ ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ Y2 ) @ D ) )
                | ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ X3 )
                  = ( plus_plus_nat @ ( times_times_nat @ A @ Y2 ) @ D ) ) ) ) ) ) ) ).

% bezout_lemma_nat
thf(fact_4747_bezout1__nat,axiom,
    ! [A: nat,B: nat] :
    ? [D5: nat,X3: nat,Y2: nat] :
      ( ( dvd_dvd_nat @ D5 @ A )
      & ( dvd_dvd_nat @ D5 @ B )
      & ( ( ( minus_minus_nat @ ( times_times_nat @ A @ X3 ) @ ( times_times_nat @ B @ Y2 ) )
          = D5 )
        | ( ( minus_minus_nat @ ( times_times_nat @ B @ X3 ) @ ( times_times_nat @ A @ Y2 ) )
          = D5 ) ) ) ).

% bezout1_nat
thf(fact_4748_zdvd__reduce,axiom,
    ! [K: int,N: int,M: int] :
      ( ( dvd_dvd_int @ K @ ( plus_plus_int @ N @ ( times_times_int @ K @ M ) ) )
      = ( dvd_dvd_int @ K @ N ) ) ).

% zdvd_reduce
thf(fact_4749_zdvd__period,axiom,
    ! [A: int,D: int,X2: int,T: int,C: int] :
      ( ( dvd_dvd_int @ A @ D )
     => ( ( dvd_dvd_int @ A @ ( plus_plus_int @ X2 @ T ) )
        = ( dvd_dvd_int @ A @ ( plus_plus_int @ ( plus_plus_int @ X2 @ ( times_times_int @ C @ D ) ) @ T ) ) ) ) ).

% zdvd_period
thf(fact_4750_inc_Osimps_I3_J,axiom,
    ! [X2: num] :
      ( ( inc @ ( bit1 @ X2 ) )
      = ( bit0 @ ( inc @ X2 ) ) ) ).

% inc.simps(3)
thf(fact_4751_inc_Osimps_I2_J,axiom,
    ! [X2: num] :
      ( ( inc @ ( bit0 @ X2 ) )
      = ( bit1 @ X2 ) ) ).

% inc.simps(2)
thf(fact_4752_nat__dvd__iff,axiom,
    ! [Z2: int,M: nat] :
      ( ( dvd_dvd_nat @ ( nat2 @ Z2 ) @ M )
      = ( ( ( ord_less_eq_int @ zero_zero_int @ Z2 )
         => ( dvd_dvd_int @ Z2 @ ( semiri1314217659103216013at_int @ M ) ) )
        & ( ~ ( ord_less_eq_int @ zero_zero_int @ Z2 )
         => ( M = zero_zero_nat ) ) ) ) ).

% nat_dvd_iff
thf(fact_4753_zero__less__binomial,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ord_less_nat @ zero_zero_nat @ ( binomial @ N @ K ) ) ) ).

% zero_less_binomial
thf(fact_4754_Suc__times__binomial__add,axiom,
    ! [A: nat,B: nat] :
      ( ( times_times_nat @ ( suc @ A ) @ ( binomial @ ( suc @ ( plus_plus_nat @ A @ B ) ) @ ( suc @ A ) ) )
      = ( times_times_nat @ ( suc @ B ) @ ( binomial @ ( suc @ ( plus_plus_nat @ A @ B ) ) @ A ) ) ) ).

% Suc_times_binomial_add
thf(fact_4755_choose__mult,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ M @ N )
       => ( ( times_times_nat @ ( binomial @ N @ M ) @ ( binomial @ M @ K ) )
          = ( times_times_nat @ ( binomial @ N @ K ) @ ( binomial @ ( minus_minus_nat @ N @ K ) @ ( minus_minus_nat @ M @ K ) ) ) ) ) ) ).

% choose_mult
thf(fact_4756_binomial__absorb__comp,axiom,
    ! [N: nat,K: nat] :
      ( ( times_times_nat @ ( minus_minus_nat @ N @ K ) @ ( binomial @ N @ K ) )
      = ( times_times_nat @ N @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ K ) ) ) ).

% binomial_absorb_comp
thf(fact_4757_take__bit__decr__eq,axiom,
    ! [N: nat,K: int] :
      ( ( ( bit_se2923211474154528505it_int @ N @ K )
       != zero_zero_int )
     => ( ( bit_se2923211474154528505it_int @ N @ ( minus_minus_int @ K @ one_one_int ) )
        = ( minus_minus_int @ ( bit_se2923211474154528505it_int @ N @ K ) @ one_one_int ) ) ) ).

% take_bit_decr_eq
thf(fact_4758_eval__nat__numeral_I3_J,axiom,
    ! [N: num] :
      ( ( numeral_numeral_nat @ ( bit1 @ N ) )
      = ( suc @ ( numeral_numeral_nat @ ( bit0 @ N ) ) ) ) ).

% eval_nat_numeral(3)
thf(fact_4759_dvd__imp__le,axiom,
    ! [K: nat,N: nat] :
      ( ( dvd_dvd_nat @ K @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_nat @ K @ N ) ) ) ).

% dvd_imp_le
thf(fact_4760_dvd__mult__cancel,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( dvd_dvd_nat @ M @ N ) ) ) ).

% dvd_mult_cancel
thf(fact_4761_nat__mult__dvd__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( dvd_dvd_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( dvd_dvd_nat @ M @ N ) ) ) ).

% nat_mult_dvd_cancel1
thf(fact_4762_bezout__add__strong__nat,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ? [D5: nat,X3: nat,Y2: nat] :
          ( ( dvd_dvd_nat @ D5 @ A )
          & ( dvd_dvd_nat @ D5 @ B )
          & ( ( times_times_nat @ A @ X3 )
            = ( plus_plus_nat @ ( times_times_nat @ B @ Y2 ) @ D5 ) ) ) ) ).

% bezout_add_strong_nat
thf(fact_4763_zdvd__imp__le,axiom,
    ! [Z2: int,N: int] :
      ( ( dvd_dvd_int @ Z2 @ N )
     => ( ( ord_less_int @ zero_zero_int @ N )
       => ( ord_less_eq_int @ Z2 @ N ) ) ) ).

% zdvd_imp_le
thf(fact_4764_mod__greater__zero__iff__not__dvd,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( modulo_modulo_nat @ M @ N ) )
      = ( ~ ( dvd_dvd_nat @ N @ M ) ) ) ).

% mod_greater_zero_iff_not_dvd
thf(fact_4765_dvd__imp__le__int,axiom,
    ! [I: int,D: int] :
      ( ( I != zero_zero_int )
     => ( ( dvd_dvd_int @ D @ I )
       => ( ord_less_eq_int @ ( abs_abs_int @ D ) @ ( abs_abs_int @ I ) ) ) ) ).

% dvd_imp_le_int
thf(fact_4766_mod__eq__dvd__iff__nat,axiom,
    ! [N: nat,M: nat,Q2: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( ( modulo_modulo_nat @ M @ Q2 )
          = ( modulo_modulo_nat @ N @ Q2 ) )
        = ( dvd_dvd_nat @ Q2 @ ( minus_minus_nat @ M @ N ) ) ) ) ).

% mod_eq_dvd_iff_nat
thf(fact_4767_dvd__fact,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ one_one_nat @ M )
     => ( ( ord_less_eq_nat @ M @ N )
       => ( dvd_dvd_nat @ M @ ( semiri1408675320244567234ct_nat @ N ) ) ) ) ).

% dvd_fact
thf(fact_4768_even__nat__iff,axiom,
    ! [K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( nat2 @ K ) )
        = ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K ) ) ) ).

% even_nat_iff
thf(fact_4769_gcd__nat_Oordering__top__axioms,axiom,
    ( ordering_top_nat @ dvd_dvd_nat
    @ ^ [M2: nat,N3: nat] :
        ( ( dvd_dvd_nat @ M2 @ N3 )
        & ( M2 != N3 ) )
    @ zero_zero_nat ) ).

% gcd_nat.ordering_top_axioms
thf(fact_4770_binomial__absorption,axiom,
    ! [K: nat,N: nat] :
      ( ( times_times_nat @ ( suc @ K ) @ ( binomial @ N @ ( suc @ K ) ) )
      = ( times_times_nat @ N @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ K ) ) ) ).

% binomial_absorption
thf(fact_4771_odd__mod__4__div__2,axiom,
    ! [N: nat] :
      ( ( ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
        = ( numeral_numeral_nat @ ( bit1 @ one ) ) )
     => ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% odd_mod_4_div_2
thf(fact_4772_numeral__3__eq__3,axiom,
    ( ( numeral_numeral_nat @ ( bit1 @ one ) )
    = ( suc @ ( suc @ ( suc @ zero_zero_nat ) ) ) ) ).

% numeral_3_eq_3
thf(fact_4773_Suc3__eq__add__3,axiom,
    ! [N: nat] :
      ( ( suc @ ( suc @ ( suc @ N ) ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ N ) ) ).

% Suc3_eq_add_3
thf(fact_4774_binomial__fact__lemma,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( times_times_nat @ ( times_times_nat @ ( semiri1408675320244567234ct_nat @ K ) @ ( semiri1408675320244567234ct_nat @ ( minus_minus_nat @ N @ K ) ) ) @ ( binomial @ N @ K ) )
        = ( semiri1408675320244567234ct_nat @ N ) ) ) ).

% binomial_fact_lemma
thf(fact_4775_dvd__mult__cancel2,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( dvd_dvd_nat @ ( times_times_nat @ N @ M ) @ M )
        = ( N = one_one_nat ) ) ) ).

% dvd_mult_cancel2
thf(fact_4776_dvd__mult__cancel1,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( dvd_dvd_nat @ ( times_times_nat @ M @ N ) @ M )
        = ( N = one_one_nat ) ) ) ).

% dvd_mult_cancel1
thf(fact_4777_even__even__mod__4__iff,axiom,
    ! [N: nat] :
      ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
      = ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ).

% even_even_mod_4_iff
thf(fact_4778_dvd__minus__add,axiom,
    ! [Q2: nat,N: nat,R: nat,M: nat] :
      ( ( ord_less_eq_nat @ Q2 @ N )
     => ( ( ord_less_eq_nat @ Q2 @ ( times_times_nat @ R @ M ) )
       => ( ( dvd_dvd_nat @ M @ ( minus_minus_nat @ N @ Q2 ) )
          = ( dvd_dvd_nat @ M @ ( plus_plus_nat @ N @ ( minus_minus_nat @ ( times_times_nat @ R @ M ) @ Q2 ) ) ) ) ) ) ).

% dvd_minus_add
thf(fact_4779_mod__nat__eqI,axiom,
    ! [R: nat,N: nat,M: nat] :
      ( ( ord_less_nat @ R @ N )
     => ( ( ord_less_eq_nat @ R @ M )
       => ( ( dvd_dvd_nat @ N @ ( minus_minus_nat @ M @ R ) )
         => ( ( modulo_modulo_nat @ M @ N )
            = R ) ) ) ) ).

% mod_nat_eqI
thf(fact_4780_zdvd__mult__cancel1,axiom,
    ! [M: int,N: int] :
      ( ( M != zero_zero_int )
     => ( ( dvd_dvd_int @ ( times_times_int @ M @ N ) @ M )
        = ( ( abs_abs_int @ N )
          = one_one_int ) ) ) ).

% zdvd_mult_cancel1
thf(fact_4781_mod__int__pos__iff,axiom,
    ! [K: int,L: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( modulo_modulo_int @ K @ L ) )
      = ( ( dvd_dvd_int @ L @ K )
        | ( ( L = zero_zero_int )
          & ( ord_less_eq_int @ zero_zero_int @ K ) )
        | ( ord_less_int @ zero_zero_int @ L ) ) ) ).

% mod_int_pos_iff
thf(fact_4782_power__dvd__imp__le,axiom,
    ! [I: nat,M: nat,N: nat] :
      ( ( dvd_dvd_nat @ ( power_power_nat @ I @ M ) @ ( power_power_nat @ I @ N ) )
     => ( ( ord_less_nat @ one_one_nat @ I )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% power_dvd_imp_le
thf(fact_4783_take__bit__Suc__minus__bit1,axiom,
    ! [N: nat,K: num] :
      ( ( bit_se2923211474154528505it_int @ ( suc @ N ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ K ) ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( bit_se2923211474154528505it_int @ N @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( inc @ K ) ) ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ one_one_int ) ) ).

% take_bit_Suc_minus_bit1
thf(fact_4784_num_Osize_I6_J,axiom,
    ! [X32: num] :
      ( ( size_size_num @ ( bit1 @ X32 ) )
      = ( plus_plus_nat @ ( size_size_num @ X32 ) @ ( suc @ zero_zero_nat ) ) ) ).

% num.size(6)
thf(fact_4785_choose__reduce__nat,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ( binomial @ N @ K )
          = ( plus_plus_nat @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ ( minus_minus_nat @ K @ one_one_nat ) ) @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ K ) ) ) ) ) ).

% choose_reduce_nat
thf(fact_4786_times__binomial__minus1__eq,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( times_times_nat @ K @ ( binomial @ N @ K ) )
        = ( times_times_nat @ N @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ ( minus_minus_nat @ K @ one_one_nat ) ) ) ) ) ).

% times_binomial_minus1_eq
thf(fact_4787_binomial__le__pow2,axiom,
    ! [N: nat,K: nat] : ( ord_less_eq_nat @ ( binomial @ N @ K ) @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% binomial_le_pow2
thf(fact_4788_odd__pos,axiom,
    ! [N: nat] :
      ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% odd_pos
thf(fact_4789_binomial__altdef__nat,axiom,
    ! [K: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ N )
     => ( ( binomial @ N @ K )
        = ( divide_divide_nat @ ( semiri1408675320244567234ct_nat @ N ) @ ( times_times_nat @ ( semiri1408675320244567234ct_nat @ K ) @ ( semiri1408675320244567234ct_nat @ ( minus_minus_nat @ N @ K ) ) ) ) ) ) ).

% binomial_altdef_nat
thf(fact_4790_Suc__mod__eq__add3__mod,axiom,
    ! [M: nat,N: nat] :
      ( ( modulo_modulo_nat @ ( suc @ ( suc @ ( suc @ M ) ) ) @ N )
      = ( modulo_modulo_nat @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ M ) @ N ) ) ).

% Suc_mod_eq_add3_mod
thf(fact_4791_Suc__div__eq__add3__div,axiom,
    ! [M: nat,N: nat] :
      ( ( divide_divide_nat @ ( suc @ ( suc @ ( suc @ M ) ) ) @ N )
      = ( divide_divide_nat @ ( plus_plus_nat @ ( numeral_numeral_nat @ ( bit1 @ one ) ) @ M ) @ N ) ) ).

% Suc_div_eq_add3_div
thf(fact_4792_even__diff__iff,axiom,
    ! [K: int,L: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( minus_minus_int @ K @ L ) )
      = ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ K @ L ) ) ) ).

% even_diff_iff
thf(fact_4793_even__add__abs__iff,axiom,
    ! [K: int,L: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ K @ ( abs_abs_int @ L ) ) )
      = ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ K @ L ) ) ) ).

% even_add_abs_iff
thf(fact_4794_even__abs__add__iff,axiom,
    ! [K: int,L: int] :
      ( ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ ( abs_abs_int @ K ) @ L ) )
      = ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( plus_plus_int @ K @ L ) ) ) ).

% even_abs_add_iff
thf(fact_4795_dvd__power__iff__le,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K )
     => ( ( dvd_dvd_nat @ ( power_power_nat @ K @ M ) @ ( power_power_nat @ K @ N ) )
        = ( ord_less_eq_nat @ M @ N ) ) ) ).

% dvd_power_iff_le
thf(fact_4796_take__bit__nat__less__self__iff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ ( bit_se2925701944663578781it_nat @ N @ M ) @ M )
      = ( ord_less_eq_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ M ) ) ).

% take_bit_nat_less_self_iff
thf(fact_4797_binomial__addition__formula,axiom,
    ! [N: nat,K: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( binomial @ N @ ( suc @ K ) )
        = ( plus_plus_nat @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ ( suc @ K ) ) @ ( binomial @ ( minus_minus_nat @ N @ one_one_nat ) @ K ) ) ) ) ).

% binomial_addition_formula
thf(fact_4798_take__bit__int__less__self__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_se2923211474154528505it_int @ N @ K ) @ K )
      = ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ K ) ) ).

% take_bit_int_less_self_iff
thf(fact_4799_take__bit__int__greater__eq__self__iff,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_eq_int @ K @ ( bit_se2923211474154528505it_int @ N @ K ) )
      = ( ord_less_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ).

% take_bit_int_greater_eq_self_iff
thf(fact_4800_choose__two,axiom,
    ! [N: nat] :
      ( ( binomial @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( divide_divide_nat @ ( times_times_nat @ N @ ( minus_minus_nat @ N @ one_one_nat ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% choose_two
thf(fact_4801_take__bit__int__eq__self__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ( bit_se2923211474154528505it_int @ N @ K )
        = K )
      = ( ( ord_less_eq_int @ zero_zero_int @ K )
        & ( ord_less_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% take_bit_int_eq_self_iff
thf(fact_4802_take__bit__int__eq__self,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_eq_int @ zero_zero_int @ K )
     => ( ( ord_less_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
       => ( ( bit_se2923211474154528505it_int @ N @ K )
          = K ) ) ) ).

% take_bit_int_eq_self
thf(fact_4803_signed__take__bit__eq__take__bit__shift,axiom,
    ( bit_ri631733984087533419it_int
    = ( ^ [N3: nat,K2: int] : ( minus_minus_int @ ( bit_se2923211474154528505it_int @ ( suc @ N3 ) @ ( plus_plus_int @ K2 @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N3 ) ) ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N3 ) ) ) ) ).

% signed_take_bit_eq_take_bit_shift
thf(fact_4804_take__bit__incr__eq,axiom,
    ! [N: nat,K: int] :
      ( ( ( bit_se2923211474154528505it_int @ N @ K )
       != ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ one_one_int ) )
     => ( ( bit_se2923211474154528505it_int @ N @ ( plus_plus_int @ K @ one_one_int ) )
        = ( plus_plus_int @ one_one_int @ ( bit_se2923211474154528505it_int @ N @ K ) ) ) ) ).

% take_bit_incr_eq
thf(fact_4805_take__bit__int__less__eq,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ K )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ord_less_eq_int @ ( bit_se2923211474154528505it_int @ N @ K ) @ ( minus_minus_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ) ) ).

% take_bit_int_less_eq
thf(fact_4806_take__bit__int__greater__eq,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_int @ K @ zero_zero_int )
     => ( ord_less_eq_int @ ( plus_plus_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) @ ( bit_se2923211474154528505it_int @ N @ K ) ) ) ).

% take_bit_int_greater_eq
thf(fact_4807_even__mod__4__div__2,axiom,
    ! [N: nat] :
      ( ( ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
        = ( suc @ zero_zero_nat ) )
     => ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ).

% even_mod_4_div_2
thf(fact_4808_take__bit__minus__small__eq,axiom,
    ! [K: int,N: nat] :
      ( ( ord_less_int @ zero_zero_int @ K )
     => ( ( ord_less_eq_int @ K @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
       => ( ( bit_se2923211474154528505it_int @ N @ ( uminus_uminus_int @ K ) )
          = ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ K ) ) ) ) ).

% take_bit_minus_small_eq
thf(fact_4809_signed__take__bit__numeral__minus__bit1,axiom,
    ! [L: num,K: num] :
      ( ( bit_ri631733984087533419it_int @ ( numeral_numeral_nat @ L ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ K ) ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( bit_ri631733984087533419it_int @ ( pred_numeral @ L ) @ ( minus_minus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) @ one_one_int ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ one_one_int ) ) ).

% signed_take_bit_numeral_minus_bit1
thf(fact_4810_signed__take__bit__numeral__bit1,axiom,
    ! [L: num,K: num] :
      ( ( bit_ri631733984087533419it_int @ ( numeral_numeral_nat @ L ) @ ( numeral_numeral_int @ ( bit1 @ K ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( bit_ri631733984087533419it_int @ ( pred_numeral @ L ) @ ( numeral_numeral_int @ K ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ one_one_int ) ) ).

% signed_take_bit_numeral_bit1
thf(fact_4811_take__bit__numeral__minus__bit1,axiom,
    ! [L: num,K: num] :
      ( ( bit_se2923211474154528505it_int @ ( numeral_numeral_nat @ L ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ K ) ) ) )
      = ( plus_plus_int @ ( times_times_int @ ( bit_se2923211474154528505it_int @ ( pred_numeral @ L ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( inc @ K ) ) ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ one_one_int ) ) ).

% take_bit_numeral_minus_bit1
thf(fact_4812_num_Osize__gen_I3_J,axiom,
    ! [X32: num] :
      ( ( size_num @ ( bit1 @ X32 ) )
      = ( plus_plus_nat @ ( size_num @ X32 ) @ ( suc @ zero_zero_nat ) ) ) ).

% num.size_gen(3)
thf(fact_4813_num_Osize__gen_I2_J,axiom,
    ! [X22: num] :
      ( ( size_num @ ( bit0 @ X22 ) )
      = ( plus_plus_nat @ ( size_num @ X22 ) @ ( suc @ zero_zero_nat ) ) ) ).

% num.size_gen(2)
thf(fact_4814_nat__of__bool,axiom,
    ! [P: $o] :
      ( ( nat2 @ ( zero_n2684676970156552555ol_int @ P ) )
      = ( zero_n2687167440665602831ol_nat @ P ) ) ).

% nat_of_bool
thf(fact_4815_Suc__0__mod__eq,axiom,
    ! [N: nat] :
      ( ( modulo_modulo_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( zero_n2687167440665602831ol_nat
        @ ( N
         != ( suc @ zero_zero_nat ) ) ) ) ).

% Suc_0_mod_eq
thf(fact_4816_pred__numeral__simps_I1_J,axiom,
    ( ( pred_numeral @ one )
    = zero_zero_nat ) ).

% pred_numeral_simps(1)
thf(fact_4817_eq__numeral__Suc,axiom,
    ! [K: num,N: nat] :
      ( ( ( numeral_numeral_nat @ K )
        = ( suc @ N ) )
      = ( ( pred_numeral @ K )
        = N ) ) ).

% eq_numeral_Suc
thf(fact_4818_Suc__eq__numeral,axiom,
    ! [N: nat,K: num] :
      ( ( ( suc @ N )
        = ( numeral_numeral_nat @ K ) )
      = ( N
        = ( pred_numeral @ K ) ) ) ).

% Suc_eq_numeral
thf(fact_4819_pred__numeral__inc,axiom,
    ! [K: num] :
      ( ( pred_numeral @ ( inc @ K ) )
      = ( numeral_numeral_nat @ K ) ) ).

% pred_numeral_inc
thf(fact_4820_less__numeral__Suc,axiom,
    ! [K: num,N: nat] :
      ( ( ord_less_nat @ ( numeral_numeral_nat @ K ) @ ( suc @ N ) )
      = ( ord_less_nat @ ( pred_numeral @ K ) @ N ) ) ).

% less_numeral_Suc
thf(fact_4821_less__Suc__numeral,axiom,
    ! [N: nat,K: num] :
      ( ( ord_less_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ K ) )
      = ( ord_less_nat @ N @ ( pred_numeral @ K ) ) ) ).

% less_Suc_numeral
thf(fact_4822_pred__numeral__simps_I3_J,axiom,
    ! [K: num] :
      ( ( pred_numeral @ ( bit1 @ K ) )
      = ( numeral_numeral_nat @ ( bit0 @ K ) ) ) ).

% pred_numeral_simps(3)
thf(fact_4823_le__numeral__Suc,axiom,
    ! [K: num,N: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ K ) @ ( suc @ N ) )
      = ( ord_less_eq_nat @ ( pred_numeral @ K ) @ N ) ) ).

% le_numeral_Suc
thf(fact_4824_le__Suc__numeral,axiom,
    ! [N: nat,K: num] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ K ) )
      = ( ord_less_eq_nat @ N @ ( pred_numeral @ K ) ) ) ).

% le_Suc_numeral
thf(fact_4825_diff__numeral__Suc,axiom,
    ! [K: num,N: nat] :
      ( ( minus_minus_nat @ ( numeral_numeral_nat @ K ) @ ( suc @ N ) )
      = ( minus_minus_nat @ ( pred_numeral @ K ) @ N ) ) ).

% diff_numeral_Suc
thf(fact_4826_diff__Suc__numeral,axiom,
    ! [N: nat,K: num] :
      ( ( minus_minus_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ K ) )
      = ( minus_minus_nat @ N @ ( pred_numeral @ K ) ) ) ).

% diff_Suc_numeral
thf(fact_4827_take__bit__of__Suc__0,axiom,
    ! [N: nat] :
      ( ( bit_se2925701944663578781it_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( zero_n2687167440665602831ol_nat @ ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% take_bit_of_Suc_0
thf(fact_4828_dvd__antisym,axiom,
    ! [M: nat,N: nat] :
      ( ( dvd_dvd_nat @ M @ N )
     => ( ( dvd_dvd_nat @ N @ M )
       => ( M = N ) ) ) ).

% dvd_antisym
thf(fact_4829_gcd__nat_Onot__eq__order__implies__strict,axiom,
    ! [A: nat,B: nat] :
      ( ( A != B )
     => ( ( dvd_dvd_nat @ A @ B )
       => ( ( dvd_dvd_nat @ A @ B )
          & ( A != B ) ) ) ) ).

% gcd_nat.not_eq_order_implies_strict
thf(fact_4830_gcd__nat_Ostrict__implies__not__eq,axiom,
    ! [A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
     => ( A != B ) ) ).

% gcd_nat.strict_implies_not_eq
thf(fact_4831_gcd__nat_Ostrict__implies__order,axiom,
    ! [A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
     => ( dvd_dvd_nat @ A @ B ) ) ).

% gcd_nat.strict_implies_order
thf(fact_4832_gcd__nat_Ostrict__iff__order,axiom,
    ! [A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
      = ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) ) ) ).

% gcd_nat.strict_iff_order
thf(fact_4833_gcd__nat_Oorder__iff__strict,axiom,
    ( dvd_dvd_nat
    = ( ^ [A2: nat,B2: nat] :
          ( ( ( dvd_dvd_nat @ A2 @ B2 )
            & ( A2 != B2 ) )
          | ( A2 = B2 ) ) ) ) ).

% gcd_nat.order_iff_strict
thf(fact_4834_gcd__nat_Ostrict__iff__not,axiom,
    ! [A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
      = ( ( dvd_dvd_nat @ A @ B )
        & ~ ( dvd_dvd_nat @ B @ A ) ) ) ).

% gcd_nat.strict_iff_not
thf(fact_4835_gcd__nat_Ostrict__trans2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
     => ( ( dvd_dvd_nat @ B @ C )
       => ( ( dvd_dvd_nat @ A @ C )
          & ( A != C ) ) ) ) ).

% gcd_nat.strict_trans2
thf(fact_4836_gcd__nat_Ostrict__trans1,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( ( dvd_dvd_nat @ B @ C )
          & ( B != C ) )
       => ( ( dvd_dvd_nat @ A @ C )
          & ( A != C ) ) ) ) ).

% gcd_nat.strict_trans1
thf(fact_4837_gcd__nat_Ostrict__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
     => ( ( ( dvd_dvd_nat @ B @ C )
          & ( B != C ) )
       => ( ( dvd_dvd_nat @ A @ C )
          & ( A != C ) ) ) ) ).

% gcd_nat.strict_trans
thf(fact_4838_gcd__nat_Oantisym,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ B @ A )
       => ( A = B ) ) ) ).

% gcd_nat.antisym
thf(fact_4839_gcd__nat_Oirrefl,axiom,
    ! [A: nat] :
      ~ ( ( dvd_dvd_nat @ A @ A )
        & ( A != A ) ) ).

% gcd_nat.irrefl
thf(fact_4840_gcd__nat_Oeq__iff,axiom,
    ( ( ^ [Y3: nat,Z: nat] : Y3 = Z )
    = ( ^ [A2: nat,B2: nat] :
          ( ( dvd_dvd_nat @ A2 @ B2 )
          & ( dvd_dvd_nat @ B2 @ A2 ) ) ) ) ).

% gcd_nat.eq_iff
thf(fact_4841_gcd__nat_Otrans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ B @ C )
       => ( dvd_dvd_nat @ A @ C ) ) ) ).

% gcd_nat.trans
thf(fact_4842_gcd__nat_Orefl,axiom,
    ! [A: nat] : ( dvd_dvd_nat @ A @ A ) ).

% gcd_nat.refl
thf(fact_4843_gcd__nat_Oasym,axiom,
    ! [A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
     => ~ ( ( dvd_dvd_nat @ B @ A )
          & ( B != A ) ) ) ).

% gcd_nat.asym
thf(fact_4844_numeral__eq__Suc,axiom,
    ( numeral_numeral_nat
    = ( ^ [K2: num] : ( suc @ ( pred_numeral @ K2 ) ) ) ) ).

% numeral_eq_Suc
thf(fact_4845_pred__numeral__def,axiom,
    ( pred_numeral
    = ( ^ [K2: num] : ( minus_minus_nat @ ( numeral_numeral_nat @ K2 ) @ one_one_nat ) ) ) ).

% pred_numeral_def
thf(fact_4846_num_Osize__gen_I1_J,axiom,
    ( ( size_num @ one )
    = zero_zero_nat ) ).

% num.size_gen(1)
thf(fact_4847_set__decode__0,axiom,
    ! [X2: nat] :
      ( ( member_nat @ zero_zero_nat @ ( nat_set_decode @ X2 ) )
      = ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ X2 ) ) ) ).

% set_decode_0
thf(fact_4848_set__decode__def,axiom,
    ( nat_set_decode
    = ( ^ [X: nat] :
          ( collect_nat
          @ ^ [N3: nat] :
              ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( divide_divide_nat @ X @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N3 ) ) ) ) ) ) ).

% set_decode_def
thf(fact_4849_and__int__unfold,axiom,
    ( bit_se725231765392027082nd_int
    = ( ^ [K2: int,L2: int] :
          ( if_int
          @ ( ( K2 = zero_zero_int )
            | ( L2 = zero_zero_int ) )
          @ zero_zero_int
          @ ( if_int
            @ ( K2
              = ( uminus_uminus_int @ one_one_int ) )
            @ L2
            @ ( if_int
              @ ( L2
                = ( uminus_uminus_int @ one_one_int ) )
              @ K2
              @ ( plus_plus_int @ ( times_times_int @ ( modulo_modulo_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( modulo_modulo_int @ L2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( divide_divide_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ).

% and_int_unfold
thf(fact_4850_take__bit__eq__mask__iff__exp__dvd,axiom,
    ! [N: nat,K: int] :
      ( ( ( bit_se2923211474154528505it_int @ N @ K )
        = ( bit_se2000444600071755411sk_int @ N ) )
      = ( dvd_dvd_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ ( plus_plus_int @ K @ one_one_int ) ) ) ).

% take_bit_eq_mask_iff_exp_dvd
thf(fact_4851_modulo__int__def,axiom,
    ( modulo_modulo_int
    = ( ^ [K2: int,L2: int] :
          ( if_int @ ( L2 = zero_zero_int ) @ K2
          @ ( if_int
            @ ( ( sgn_sgn_int @ K2 )
              = ( sgn_sgn_int @ L2 ) )
            @ ( times_times_int @ ( sgn_sgn_int @ L2 ) @ ( semiri1314217659103216013at_int @ ( modulo_modulo_nat @ ( nat2 @ ( abs_abs_int @ K2 ) ) @ ( nat2 @ ( abs_abs_int @ L2 ) ) ) ) )
            @ ( times_times_int @ ( sgn_sgn_int @ L2 )
              @ ( minus_minus_int
                @ ( times_times_int @ ( abs_abs_int @ L2 )
                  @ ( zero_n2684676970156552555ol_int
                    @ ~ ( dvd_dvd_int @ L2 @ K2 ) ) )
                @ ( semiri1314217659103216013at_int @ ( modulo_modulo_nat @ ( nat2 @ ( abs_abs_int @ K2 ) ) @ ( nat2 @ ( abs_abs_int @ L2 ) ) ) ) ) ) ) ) ) ) ).

% modulo_int_def
thf(fact_4852_mask__nat__positive__iff,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( bit_se2002935070580805687sk_nat @ N ) )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% mask_nat_positive_iff
thf(fact_4853_and__nonnegative__int__iff,axiom,
    ! [K: int,L: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se725231765392027082nd_int @ K @ L ) )
      = ( ( ord_less_eq_int @ zero_zero_int @ K )
        | ( ord_less_eq_int @ zero_zero_int @ L ) ) ) ).

% and_nonnegative_int_iff
thf(fact_4854_and__negative__int__iff,axiom,
    ! [K: int,L: int] :
      ( ( ord_less_int @ ( bit_se725231765392027082nd_int @ K @ L ) @ zero_zero_int )
      = ( ( ord_less_int @ K @ zero_zero_int )
        & ( ord_less_int @ L @ zero_zero_int ) ) ) ).

% and_negative_int_iff
thf(fact_4855_sgn__mult__dvd__iff,axiom,
    ! [R: int,L: int,K: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ ( sgn_sgn_int @ R ) @ L ) @ K )
      = ( ( dvd_dvd_int @ L @ K )
        & ( ( R = zero_zero_int )
         => ( K = zero_zero_int ) ) ) ) ).

% sgn_mult_dvd_iff
thf(fact_4856_mult__sgn__dvd__iff,axiom,
    ! [L: int,R: int,K: int] :
      ( ( dvd_dvd_int @ ( times_times_int @ L @ ( sgn_sgn_int @ R ) ) @ K )
      = ( ( dvd_dvd_int @ L @ K )
        & ( ( R = zero_zero_int )
         => ( K = zero_zero_int ) ) ) ) ).

% mult_sgn_dvd_iff
thf(fact_4857_dvd__sgn__mult__iff,axiom,
    ! [L: int,R: int,K: int] :
      ( ( dvd_dvd_int @ L @ ( times_times_int @ ( sgn_sgn_int @ R ) @ K ) )
      = ( ( dvd_dvd_int @ L @ K )
        | ( R = zero_zero_int ) ) ) ).

% dvd_sgn_mult_iff
thf(fact_4858_dvd__mult__sgn__iff,axiom,
    ! [L: int,K: int,R: int] :
      ( ( dvd_dvd_int @ L @ ( times_times_int @ K @ ( sgn_sgn_int @ R ) ) )
      = ( ( dvd_dvd_int @ L @ K )
        | ( R = zero_zero_int ) ) ) ).

% dvd_mult_sgn_iff
thf(fact_4859_and__minus__numerals_I2_J,axiom,
    ! [N: num] :
      ( ( bit_se725231765392027082nd_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = one_one_int ) ).

% and_minus_numerals(2)
thf(fact_4860_and__minus__numerals_I6_J,axiom,
    ! [N: num] :
      ( ( bit_se725231765392027082nd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) @ one_one_int )
      = one_one_int ) ).

% and_minus_numerals(6)
thf(fact_4861_and__minus__numerals_I5_J,axiom,
    ! [N: num] :
      ( ( bit_se725231765392027082nd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) @ one_one_int )
      = zero_zero_int ) ).

% and_minus_numerals(5)
thf(fact_4862_and__minus__numerals_I1_J,axiom,
    ! [N: num] :
      ( ( bit_se725231765392027082nd_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = zero_zero_int ) ).

% and_minus_numerals(1)
thf(fact_4863_less__eq__mask,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ ( bit_se2002935070580805687sk_nat @ N ) ) ).

% less_eq_mask
thf(fact_4864_subset__decode__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_set_nat @ ( nat_set_decode @ M ) @ ( nat_set_decode @ N ) )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% subset_decode_imp_le
thf(fact_4865_AND__upper2_H,axiom,
    ! [Y: int,Z2: int,X2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Y )
     => ( ( ord_less_eq_int @ Y @ Z2 )
       => ( ord_less_eq_int @ ( bit_se725231765392027082nd_int @ X2 @ Y ) @ Z2 ) ) ) ).

% AND_upper2'
thf(fact_4866_AND__upper1_H,axiom,
    ! [Y: int,Z2: int,Ya: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Y )
     => ( ( ord_less_eq_int @ Y @ Z2 )
       => ( ord_less_eq_int @ ( bit_se725231765392027082nd_int @ Y @ Ya ) @ Z2 ) ) ) ).

% AND_upper1'
thf(fact_4867_AND__upper2,axiom,
    ! [Y: int,X2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Y )
     => ( ord_less_eq_int @ ( bit_se725231765392027082nd_int @ X2 @ Y ) @ Y ) ) ).

% AND_upper2
thf(fact_4868_AND__upper1,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X2 )
     => ( ord_less_eq_int @ ( bit_se725231765392027082nd_int @ X2 @ Y ) @ X2 ) ) ).

% AND_upper1
thf(fact_4869_AND__lower,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X2 )
     => ( ord_less_eq_int @ zero_zero_int @ ( bit_se725231765392027082nd_int @ X2 @ Y ) ) ) ).

% AND_lower
thf(fact_4870_int__sgnE,axiom,
    ! [K: int] :
      ~ ! [N2: nat,L3: int] :
          ( K
         != ( times_times_int @ ( sgn_sgn_int @ L3 ) @ ( semiri1314217659103216013at_int @ N2 ) ) ) ).

% int_sgnE
thf(fact_4871_mask__nonnegative__int,axiom,
    ! [N: nat] : ( ord_less_eq_int @ zero_zero_int @ ( bit_se2000444600071755411sk_int @ N ) ) ).

% mask_nonnegative_int
thf(fact_4872_not__mask__negative__int,axiom,
    ! [N: nat] :
      ~ ( ord_less_int @ ( bit_se2000444600071755411sk_int @ N ) @ zero_zero_int ) ).

% not_mask_negative_int
thf(fact_4873_AND__upper2_H_H,axiom,
    ! [Y: int,Z2: int,X2: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Y )
     => ( ( ord_less_int @ Y @ Z2 )
       => ( ord_less_int @ ( bit_se725231765392027082nd_int @ X2 @ Y ) @ Z2 ) ) ) ).

% AND_upper2''
thf(fact_4874_AND__upper1_H_H,axiom,
    ! [Y: int,Z2: int,Ya: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ Y )
     => ( ( ord_less_int @ Y @ Z2 )
       => ( ord_less_int @ ( bit_se725231765392027082nd_int @ Y @ Ya ) @ Z2 ) ) ) ).

% AND_upper1''
thf(fact_4875_and__less__eq,axiom,
    ! [L: int,K: int] :
      ( ( ord_less_int @ L @ zero_zero_int )
     => ( ord_less_eq_int @ ( bit_se725231765392027082nd_int @ K @ L ) @ K ) ) ).

% and_less_eq
thf(fact_4876_sgn__mod,axiom,
    ! [L: int,K: int] :
      ( ( L != zero_zero_int )
     => ( ~ ( dvd_dvd_int @ L @ K )
       => ( ( sgn_sgn_int @ ( modulo_modulo_int @ K @ L ) )
          = ( sgn_sgn_int @ L ) ) ) ) ).

% sgn_mod
thf(fact_4877_less__mask,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ N )
     => ( ord_less_nat @ N @ ( bit_se2002935070580805687sk_nat @ N ) ) ) ).

% less_mask
thf(fact_4878_zsgn__def,axiom,
    ( sgn_sgn_int
    = ( ^ [I2: int] : ( if_int @ ( I2 = zero_zero_int ) @ zero_zero_int @ ( if_int @ ( ord_less_int @ zero_zero_int @ I2 ) @ one_one_int @ ( uminus_uminus_int @ one_one_int ) ) ) ) ) ).

% zsgn_def
thf(fact_4879_div__sgn__abs__cancel,axiom,
    ! [V: int,K: int,L: int] :
      ( ( V != zero_zero_int )
     => ( ( divide_divide_int @ ( times_times_int @ ( sgn_sgn_int @ V ) @ ( abs_abs_int @ K ) ) @ ( times_times_int @ ( sgn_sgn_int @ V ) @ ( abs_abs_int @ L ) ) )
        = ( divide_divide_int @ ( abs_abs_int @ K ) @ ( abs_abs_int @ L ) ) ) ) ).

% div_sgn_abs_cancel
thf(fact_4880_take__bit__eq__mask__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ( bit_se2923211474154528505it_int @ N @ K )
        = ( bit_se2000444600071755411sk_int @ N ) )
      = ( ( bit_se2923211474154528505it_int @ N @ ( plus_plus_int @ K @ one_one_int ) )
        = zero_zero_int ) ) ).

% take_bit_eq_mask_iff
thf(fact_4881_div__noneq__sgn__abs,axiom,
    ! [L: int,K: int] :
      ( ( L != zero_zero_int )
     => ( ( ( sgn_sgn_int @ K )
         != ( sgn_sgn_int @ L ) )
       => ( ( divide_divide_int @ K @ L )
          = ( minus_minus_int @ ( uminus_uminus_int @ ( divide_divide_int @ ( abs_abs_int @ K ) @ ( abs_abs_int @ L ) ) )
            @ ( zero_n2684676970156552555ol_int
              @ ~ ( dvd_dvd_int @ L @ K ) ) ) ) ) ) ).

% div_noneq_sgn_abs
thf(fact_4882_and__int__rec,axiom,
    ( bit_se725231765392027082nd_int
    = ( ^ [K2: int,L2: int] :
          ( plus_plus_int
          @ ( zero_n2684676970156552555ol_int
            @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K2 )
              & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L2 ) ) )
          @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( divide_divide_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% and_int_rec
thf(fact_4883_mask__half__int,axiom,
    ! [N: nat] :
      ( ( divide_divide_int @ ( bit_se2000444600071755411sk_int @ N ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
      = ( bit_se2000444600071755411sk_int @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ).

% mask_half_int
thf(fact_4884_mask__nat__def,axiom,
    ( bit_se2002935070580805687sk_nat
    = ( ^ [N3: nat] : ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N3 ) @ one_one_nat ) ) ) ).

% mask_nat_def
thf(fact_4885_mask__int__def,axiom,
    ( bit_se2000444600071755411sk_int
    = ( ^ [N3: nat] : ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N3 ) @ one_one_int ) ) ) ).

% mask_int_def
thf(fact_4886_divide__int__unfold,axiom,
    ! [L: int,K: int,N: nat,M: nat] :
      ( ( ( ( ( sgn_sgn_int @ L )
            = zero_zero_int )
          | ( ( sgn_sgn_int @ K )
            = zero_zero_int )
          | ( N = zero_zero_nat ) )
       => ( ( divide_divide_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L ) @ ( semiri1314217659103216013at_int @ N ) ) )
          = zero_zero_int ) )
      & ( ~ ( ( ( sgn_sgn_int @ L )
              = zero_zero_int )
            | ( ( sgn_sgn_int @ K )
              = zero_zero_int )
            | ( N = zero_zero_nat ) )
       => ( ( ( ( sgn_sgn_int @ K )
              = ( sgn_sgn_int @ L ) )
           => ( ( divide_divide_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L ) @ ( semiri1314217659103216013at_int @ N ) ) )
              = ( semiri1314217659103216013at_int @ ( divide_divide_nat @ M @ N ) ) ) )
          & ( ( ( sgn_sgn_int @ K )
             != ( sgn_sgn_int @ L ) )
           => ( ( divide_divide_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L ) @ ( semiri1314217659103216013at_int @ N ) ) )
              = ( uminus_uminus_int
                @ ( semiri1314217659103216013at_int
                  @ ( plus_plus_nat @ ( divide_divide_nat @ M @ N )
                    @ ( zero_n2687167440665602831ol_nat
                      @ ~ ( dvd_dvd_nat @ N @ M ) ) ) ) ) ) ) ) ) ) ).

% divide_int_unfold
thf(fact_4887_modulo__int__unfold,axiom,
    ! [L: int,K: int,N: nat,M: nat] :
      ( ( ( ( ( sgn_sgn_int @ L )
            = zero_zero_int )
          | ( ( sgn_sgn_int @ K )
            = zero_zero_int )
          | ( N = zero_zero_nat ) )
       => ( ( modulo_modulo_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L ) @ ( semiri1314217659103216013at_int @ N ) ) )
          = ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) ) )
      & ( ~ ( ( ( sgn_sgn_int @ L )
              = zero_zero_int )
            | ( ( sgn_sgn_int @ K )
              = zero_zero_int )
            | ( N = zero_zero_nat ) )
       => ( ( ( ( sgn_sgn_int @ K )
              = ( sgn_sgn_int @ L ) )
           => ( ( modulo_modulo_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L ) @ ( semiri1314217659103216013at_int @ N ) ) )
              = ( times_times_int @ ( sgn_sgn_int @ L ) @ ( semiri1314217659103216013at_int @ ( modulo_modulo_nat @ M @ N ) ) ) ) )
          & ( ( ( sgn_sgn_int @ K )
             != ( sgn_sgn_int @ L ) )
           => ( ( modulo_modulo_int @ ( times_times_int @ ( sgn_sgn_int @ K ) @ ( semiri1314217659103216013at_int @ M ) ) @ ( times_times_int @ ( sgn_sgn_int @ L ) @ ( semiri1314217659103216013at_int @ N ) ) )
              = ( times_times_int @ ( sgn_sgn_int @ L )
                @ ( minus_minus_int
                  @ ( semiri1314217659103216013at_int
                    @ ( times_times_nat @ N
                      @ ( zero_n2687167440665602831ol_nat
                        @ ~ ( dvd_dvd_nat @ N @ M ) ) ) )
                  @ ( semiri1314217659103216013at_int @ ( modulo_modulo_nat @ M @ N ) ) ) ) ) ) ) ) ) ).

% modulo_int_unfold
thf(fact_4888_divide__int__def,axiom,
    ( divide_divide_int
    = ( ^ [K2: int,L2: int] :
          ( if_int @ ( L2 = zero_zero_int ) @ zero_zero_int
          @ ( if_int
            @ ( ( sgn_sgn_int @ K2 )
              = ( sgn_sgn_int @ L2 ) )
            @ ( semiri1314217659103216013at_int @ ( divide_divide_nat @ ( nat2 @ ( abs_abs_int @ K2 ) ) @ ( nat2 @ ( abs_abs_int @ L2 ) ) ) )
            @ ( uminus_uminus_int
              @ ( semiri1314217659103216013at_int
                @ ( plus_plus_nat @ ( divide_divide_nat @ ( nat2 @ ( abs_abs_int @ K2 ) ) @ ( nat2 @ ( abs_abs_int @ L2 ) ) )
                  @ ( zero_n2687167440665602831ol_nat
                    @ ~ ( dvd_dvd_int @ L2 @ K2 ) ) ) ) ) ) ) ) ) ).

% divide_int_def
thf(fact_4889_take__bit__Suc__from__most,axiom,
    ! [N: nat,K: int] :
      ( ( bit_se2923211474154528505it_int @ ( suc @ N ) @ K )
      = ( plus_plus_int @ ( times_times_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) @ ( zero_n2684676970156552555ol_int @ ( bit_se1146084159140164899it_int @ K @ N ) ) ) @ ( bit_se2923211474154528505it_int @ N @ K ) ) ) ).

% take_bit_Suc_from_most
thf(fact_4890_Suc__0__xor__eq,axiom,
    ! [N: nat] :
      ( ( bit_se6528837805403552850or_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( minus_minus_nat @ ( plus_plus_nat @ N @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) )
        @ ( zero_n2687167440665602831ol_nat
          @ ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% Suc_0_xor_eq
thf(fact_4891_xor__Suc__0__eq,axiom,
    ! [N: nat] :
      ( ( bit_se6528837805403552850or_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( minus_minus_nat @ ( plus_plus_nat @ N @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) )
        @ ( zero_n2687167440665602831ol_nat
          @ ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% xor_Suc_0_eq
thf(fact_4892_horner__sum__of__bool__2__less,axiom,
    ! [Bs: list_o] : ( ord_less_int @ ( groups9116527308978886569_o_int @ zero_n2684676970156552555ol_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Bs ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( size_size_list_o @ Bs ) ) ) ).

% horner_sum_of_bool_2_less
thf(fact_4893_xor__nonnegative__int__iff,axiom,
    ! [K: int,L: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se6526347334894502574or_int @ K @ L ) )
      = ( ( ord_less_eq_int @ zero_zero_int @ K )
        = ( ord_less_eq_int @ zero_zero_int @ L ) ) ) ).

% xor_nonnegative_int_iff
thf(fact_4894_push__bit__nonnegative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se545348938243370406it_int @ N @ K ) )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% push_bit_nonnegative_int_iff
thf(fact_4895_xor__negative__int__iff,axiom,
    ! [K: int,L: int] :
      ( ( ord_less_int @ ( bit_se6526347334894502574or_int @ K @ L ) @ zero_zero_int )
      = ( ( ord_less_int @ K @ zero_zero_int )
       != ( ord_less_int @ L @ zero_zero_int ) ) ) ).

% xor_negative_int_iff
thf(fact_4896_push__bit__negative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_se545348938243370406it_int @ N @ K ) @ zero_zero_int )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% push_bit_negative_int_iff
thf(fact_4897_concat__bit__of__zero__1,axiom,
    ! [N: nat,L: int] :
      ( ( bit_concat_bit @ N @ zero_zero_int @ L )
      = ( bit_se545348938243370406it_int @ N @ L ) ) ).

% concat_bit_of_zero_1
thf(fact_4898_signed__take__bit__nonnegative__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_ri631733984087533419it_int @ N @ K ) )
      = ( ~ ( bit_se1146084159140164899it_int @ K @ N ) ) ) ).

% signed_take_bit_nonnegative_iff
thf(fact_4899_signed__take__bit__negative__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_ri631733984087533419it_int @ N @ K ) @ zero_zero_int )
      = ( bit_se1146084159140164899it_int @ K @ N ) ) ).

% signed_take_bit_negative_iff
thf(fact_4900_and__nat__numerals_I1_J,axiom,
    ! [Y: num] :
      ( ( bit_se727722235901077358nd_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit0 @ Y ) ) )
      = zero_zero_nat ) ).

% and_nat_numerals(1)
thf(fact_4901_and__nat__numerals_I3_J,axiom,
    ! [X2: num] :
      ( ( bit_se727722235901077358nd_nat @ ( numeral_numeral_nat @ ( bit0 @ X2 ) ) @ ( suc @ zero_zero_nat ) )
      = zero_zero_nat ) ).

% and_nat_numerals(3)
thf(fact_4902_push__bit__of__Suc__0,axiom,
    ! [N: nat] :
      ( ( bit_se547839408752420682it_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% push_bit_of_Suc_0
thf(fact_4903_xor__nat__numerals_I4_J,axiom,
    ! [X2: num] :
      ( ( bit_se6528837805403552850or_nat @ ( numeral_numeral_nat @ ( bit1 @ X2 ) ) @ ( suc @ zero_zero_nat ) )
      = ( numeral_numeral_nat @ ( bit0 @ X2 ) ) ) ).

% xor_nat_numerals(4)
thf(fact_4904_xor__nat__numerals_I3_J,axiom,
    ! [X2: num] :
      ( ( bit_se6528837805403552850or_nat @ ( numeral_numeral_nat @ ( bit0 @ X2 ) ) @ ( suc @ zero_zero_nat ) )
      = ( numeral_numeral_nat @ ( bit1 @ X2 ) ) ) ).

% xor_nat_numerals(3)
thf(fact_4905_xor__nat__numerals_I2_J,axiom,
    ! [Y: num] :
      ( ( bit_se6528837805403552850or_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit1 @ Y ) ) )
      = ( numeral_numeral_nat @ ( bit0 @ Y ) ) ) ).

% xor_nat_numerals(2)
thf(fact_4906_xor__nat__numerals_I1_J,axiom,
    ! [Y: num] :
      ( ( bit_se6528837805403552850or_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit0 @ Y ) ) )
      = ( numeral_numeral_nat @ ( bit1 @ Y ) ) ) ).

% xor_nat_numerals(1)
thf(fact_4907_and__nat__numerals_I4_J,axiom,
    ! [X2: num] :
      ( ( bit_se727722235901077358nd_nat @ ( numeral_numeral_nat @ ( bit1 @ X2 ) ) @ ( suc @ zero_zero_nat ) )
      = one_one_nat ) ).

% and_nat_numerals(4)
thf(fact_4908_and__nat__numerals_I2_J,axiom,
    ! [Y: num] :
      ( ( bit_se727722235901077358nd_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit1 @ Y ) ) )
      = one_one_nat ) ).

% and_nat_numerals(2)
thf(fact_4909_and__Suc__0__eq,axiom,
    ! [N: nat] :
      ( ( bit_se727722235901077358nd_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% and_Suc_0_eq
thf(fact_4910_Suc__0__and__eq,axiom,
    ! [N: nat] :
      ( ( bit_se727722235901077358nd_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( modulo_modulo_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% Suc_0_and_eq
thf(fact_4911_flip__bit__nat__def,axiom,
    ( bit_se2161824704523386999it_nat
    = ( ^ [M2: nat,N3: nat] : ( bit_se6528837805403552850or_nat @ N3 @ ( bit_se547839408752420682it_nat @ M2 @ one_one_nat ) ) ) ) ).

% flip_bit_nat_def
thf(fact_4912_xor__nat__def,axiom,
    ( bit_se6528837805403552850or_nat
    = ( ^ [M2: nat,N3: nat] : ( nat2 @ ( bit_se6526347334894502574or_int @ ( semiri1314217659103216013at_int @ M2 ) @ ( semiri1314217659103216013at_int @ N3 ) ) ) ) ) ).

% xor_nat_def
thf(fact_4913_bit__push__bit__iff__int,axiom,
    ! [M: nat,K: int,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( bit_se545348938243370406it_int @ M @ K ) @ N )
      = ( ( ord_less_eq_nat @ M @ N )
        & ( bit_se1146084159140164899it_int @ K @ ( minus_minus_nat @ N @ M ) ) ) ) ).

% bit_push_bit_iff_int
thf(fact_4914_flip__bit__int__def,axiom,
    ( bit_se2159334234014336723it_int
    = ( ^ [N3: nat,K2: int] : ( bit_se6526347334894502574or_int @ K2 @ ( bit_se545348938243370406it_int @ N3 @ one_one_int ) ) ) ) ).

% flip_bit_int_def
thf(fact_4915_XOR__lower,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X2 )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y )
       => ( ord_less_eq_int @ zero_zero_int @ ( bit_se6526347334894502574or_int @ X2 @ Y ) ) ) ) ).

% XOR_lower
thf(fact_4916_bit__not__int__iff_H,axiom,
    ! [K: int,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( minus_minus_int @ ( uminus_uminus_int @ K ) @ one_one_int ) @ N )
      = ( ~ ( bit_se1146084159140164899it_int @ K @ N ) ) ) ).

% bit_not_int_iff'
thf(fact_4917_and__nat__def,axiom,
    ( bit_se727722235901077358nd_nat
    = ( ^ [M2: nat,N3: nat] : ( nat2 @ ( bit_se725231765392027082nd_int @ ( semiri1314217659103216013at_int @ M2 ) @ ( semiri1314217659103216013at_int @ N3 ) ) ) ) ) ).

% and_nat_def
thf(fact_4918_concat__bit__eq,axiom,
    ( bit_concat_bit
    = ( ^ [N3: nat,K2: int,L2: int] : ( plus_plus_int @ ( bit_se2923211474154528505it_int @ N3 @ K2 ) @ ( bit_se545348938243370406it_int @ N3 @ L2 ) ) ) ) ).

% concat_bit_eq
thf(fact_4919_bit__imp__take__bit__positive,axiom,
    ! [N: nat,M: nat,K: int] :
      ( ( ord_less_nat @ N @ M )
     => ( ( bit_se1146084159140164899it_int @ K @ N )
       => ( ord_less_int @ zero_zero_int @ ( bit_se2923211474154528505it_int @ M @ K ) ) ) ) ).

% bit_imp_take_bit_positive
thf(fact_4920_bit__concat__bit__iff,axiom,
    ! [M: nat,K: int,L: int,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( bit_concat_bit @ M @ K @ L ) @ N )
      = ( ( ( ord_less_nat @ N @ M )
          & ( bit_se1146084159140164899it_int @ K @ N ) )
        | ( ( ord_less_eq_nat @ M @ N )
          & ( bit_se1146084159140164899it_int @ L @ ( minus_minus_nat @ N @ M ) ) ) ) ) ).

% bit_concat_bit_iff
thf(fact_4921_int__bit__bound,axiom,
    ! [K: int] :
      ~ ! [N2: nat] :
          ( ! [M6: nat] :
              ( ( ord_less_eq_nat @ N2 @ M6 )
             => ( ( bit_se1146084159140164899it_int @ K @ M6 )
                = ( bit_se1146084159140164899it_int @ K @ N2 ) ) )
         => ~ ( ( ord_less_nat @ zero_zero_nat @ N2 )
             => ( ( bit_se1146084159140164899it_int @ K @ ( minus_minus_nat @ N2 @ one_one_nat ) )
                = ( ~ ( bit_se1146084159140164899it_int @ K @ N2 ) ) ) ) ) ).

% int_bit_bound
thf(fact_4922_push__bit__minus__one,axiom,
    ! [N: nat] :
      ( ( bit_se545348938243370406it_int @ N @ ( uminus_uminus_int @ one_one_int ) )
      = ( uminus_uminus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ).

% push_bit_minus_one
thf(fact_4923_XOR__upper,axiom,
    ! [X2: int,N: nat,Y: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X2 )
     => ( ( ord_less_int @ X2 @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
       => ( ( ord_less_int @ Y @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
         => ( ord_less_int @ ( bit_se6526347334894502574or_int @ X2 @ Y ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ) ) ).

% XOR_upper
thf(fact_4924_and__nat__unfold,axiom,
    ( bit_se727722235901077358nd_nat
    = ( ^ [M2: nat,N3: nat] :
          ( if_nat
          @ ( ( M2 = zero_zero_nat )
            | ( N3 = zero_zero_nat ) )
          @ zero_zero_nat
          @ ( plus_plus_nat @ ( times_times_nat @ ( modulo_modulo_nat @ M2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( modulo_modulo_nat @ N3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se727722235901077358nd_nat @ ( divide_divide_nat @ M2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ).

% and_nat_unfold
thf(fact_4925_and__nat__rec,axiom,
    ( bit_se727722235901077358nd_nat
    = ( ^ [M2: nat,N3: nat] :
          ( plus_plus_nat
          @ ( zero_n2687167440665602831ol_nat
            @ ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M2 )
              & ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N3 ) ) )
          @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se727722235901077358nd_nat @ ( divide_divide_nat @ M2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% and_nat_rec
thf(fact_4926_xor__nat__unfold,axiom,
    ( bit_se6528837805403552850or_nat
    = ( ^ [M2: nat,N3: nat] : ( if_nat @ ( M2 = zero_zero_nat ) @ N3 @ ( if_nat @ ( N3 = zero_zero_nat ) @ M2 @ ( plus_plus_nat @ ( modulo_modulo_nat @ ( plus_plus_nat @ ( modulo_modulo_nat @ M2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( modulo_modulo_nat @ N3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se6528837805403552850or_nat @ ( divide_divide_nat @ M2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% xor_nat_unfold
thf(fact_4927_xor__int__rec,axiom,
    ( bit_se6526347334894502574or_int
    = ( ^ [K2: int,L2: int] :
          ( plus_plus_int
          @ ( zero_n2684676970156552555ol_int
            @ ( ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K2 ) )
             != ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L2 ) ) ) )
          @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se6526347334894502574or_int @ ( divide_divide_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% xor_int_rec
thf(fact_4928_xor__nat__rec,axiom,
    ( bit_se6528837805403552850or_nat
    = ( ^ [M2: nat,N3: nat] :
          ( plus_plus_nat
          @ ( zero_n2687167440665602831ol_nat
            @ ( ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M2 ) )
             != ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N3 ) ) ) )
          @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se6528837805403552850or_nat @ ( divide_divide_nat @ M2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% xor_nat_rec
thf(fact_4929_set__bit__eq,axiom,
    ( bit_se7879613467334960850it_int
    = ( ^ [N3: nat,K2: int] :
          ( plus_plus_int @ K2
          @ ( times_times_int
            @ ( zero_n2684676970156552555ol_int
              @ ~ ( bit_se1146084159140164899it_int @ K2 @ N3 ) )
            @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N3 ) ) ) ) ) ).

% set_bit_eq
thf(fact_4930_xor__int__unfold,axiom,
    ( bit_se6526347334894502574or_int
    = ( ^ [K2: int,L2: int] :
          ( if_int
          @ ( K2
            = ( uminus_uminus_int @ one_one_int ) )
          @ ( bit_ri7919022796975470100ot_int @ L2 )
          @ ( if_int
            @ ( L2
              = ( uminus_uminus_int @ one_one_int ) )
            @ ( bit_ri7919022796975470100ot_int @ K2 )
            @ ( if_int @ ( K2 = zero_zero_int ) @ L2 @ ( if_int @ ( L2 = zero_zero_int ) @ K2 @ ( plus_plus_int @ ( abs_abs_int @ ( minus_minus_int @ ( modulo_modulo_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( modulo_modulo_int @ L2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se6526347334894502574or_int @ ( divide_divide_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ) ).

% xor_int_unfold
thf(fact_4931_mask__eq__sum__exp__nat,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ ( suc @ zero_zero_nat ) )
      = ( groups3542108847815614940at_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        @ ( collect_nat
          @ ^ [Q6: nat] : ( ord_less_nat @ Q6 @ N ) ) ) ) ).

% mask_eq_sum_exp_nat
thf(fact_4932_not__nonnegative__int__iff,axiom,
    ! [K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_ri7919022796975470100ot_int @ K ) )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% not_nonnegative_int_iff
thf(fact_4933_not__negative__int__iff,axiom,
    ! [K: int] :
      ( ( ord_less_int @ ( bit_ri7919022796975470100ot_int @ K ) @ zero_zero_int )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% not_negative_int_iff
thf(fact_4934_bit__Suc__0__iff,axiom,
    ! [N: nat] :
      ( ( bit_se1148574629649215175it_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( N = zero_zero_nat ) ) ).

% bit_Suc_0_iff
thf(fact_4935_not__bit__Suc__0__Suc,axiom,
    ! [N: nat] :
      ~ ( bit_se1148574629649215175it_nat @ ( suc @ zero_zero_nat ) @ ( suc @ N ) ) ).

% not_bit_Suc_0_Suc
thf(fact_4936_bit__push__bit__iff__nat,axiom,
    ! [M: nat,Q2: nat,N: nat] :
      ( ( bit_se1148574629649215175it_nat @ ( bit_se547839408752420682it_nat @ M @ Q2 ) @ N )
      = ( ( ord_less_eq_nat @ M @ N )
        & ( bit_se1148574629649215175it_nat @ Q2 @ ( minus_minus_nat @ N @ M ) ) ) ) ).

% bit_push_bit_iff_nat
thf(fact_4937_not__bit__Suc__0__numeral,axiom,
    ! [N: num] :
      ~ ( bit_se1148574629649215175it_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ N ) ) ).

% not_bit_Suc_0_numeral
thf(fact_4938_not__int__def,axiom,
    ( bit_ri7919022796975470100ot_int
    = ( ^ [K2: int] : ( minus_minus_int @ ( uminus_uminus_int @ K2 ) @ one_one_int ) ) ) ).

% not_int_def
thf(fact_4939_and__not__numerals_I1_J,axiom,
    ( ( bit_se725231765392027082nd_int @ one_one_int @ ( bit_ri7919022796975470100ot_int @ one_one_int ) )
    = zero_zero_int ) ).

% and_not_numerals(1)
thf(fact_4940_unset__bit__int__def,axiom,
    ( bit_se4203085406695923979it_int
    = ( ^ [N3: nat,K2: int] : ( bit_se725231765392027082nd_int @ K2 @ ( bit_ri7919022796975470100ot_int @ ( bit_se545348938243370406it_int @ N3 @ one_one_int ) ) ) ) ) ).

% unset_bit_int_def
thf(fact_4941_and__not__numerals_I2_J,axiom,
    ! [N: num] :
      ( ( bit_se725231765392027082nd_int @ one_one_int @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = one_one_int ) ).

% and_not_numerals(2)
thf(fact_4942_and__not__numerals_I4_J,axiom,
    ! [M: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ ( bit0 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ one_one_int ) )
      = ( numeral_numeral_int @ ( bit0 @ M ) ) ) ).

% and_not_numerals(4)
thf(fact_4943_bit__nat__iff,axiom,
    ! [K: int,N: nat] :
      ( ( bit_se1148574629649215175it_nat @ ( nat2 @ K ) @ N )
      = ( ( ord_less_eq_int @ zero_zero_int @ K )
        & ( bit_se1146084159140164899it_int @ K @ N ) ) ) ).

% bit_nat_iff
thf(fact_4944_bit__minus__int__iff,axiom,
    ! [K: int,N: nat] :
      ( ( bit_se1146084159140164899it_int @ ( uminus_uminus_int @ K ) @ N )
      = ( bit_se1146084159140164899it_int @ ( bit_ri7919022796975470100ot_int @ ( minus_minus_int @ K @ one_one_int ) ) @ N ) ) ).

% bit_minus_int_iff
thf(fact_4945_and__not__numerals_I7_J,axiom,
    ! [M: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ ( bit1 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ one_one_int ) )
      = ( numeral_numeral_int @ ( bit0 @ M ) ) ) ).

% and_not_numerals(7)
thf(fact_4946_and__not__numerals_I3_J,axiom,
    ! [N: num] :
      ( ( bit_se725231765392027082nd_int @ one_one_int @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = zero_zero_int ) ).

% and_not_numerals(3)
thf(fact_4947_and__not__numerals_I8_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ ( bit1 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) ) ) ) ) ).

% and_not_numerals(8)
thf(fact_4948_not__int__rec,axiom,
    ( bit_ri7919022796975470100ot_int
    = ( ^ [K2: int] : ( plus_plus_int @ ( zero_n2684676970156552555ol_int @ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K2 ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_ri7919022796975470100ot_int @ ( divide_divide_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% not_int_rec
thf(fact_4949_atMost__atLeast0,axiom,
    ( set_ord_atMost_nat
    = ( set_or1269000886237332187st_nat @ zero_zero_nat ) ) ).

% atMost_atLeast0
thf(fact_4950_all__nat__less,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [M2: nat] :
            ( ( ord_less_eq_nat @ M2 @ N )
           => ( P @ M2 ) ) )
      = ( ! [X: nat] :
            ( ( member_nat @ X @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
           => ( P @ X ) ) ) ) ).

% all_nat_less
thf(fact_4951_ex__nat__less,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [M2: nat] :
            ( ( ord_less_eq_nat @ M2 @ N )
            & ( P @ M2 ) ) )
      = ( ? [X: nat] :
            ( ( member_nat @ X @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
            & ( P @ X ) ) ) ) ).

% ex_nat_less
thf(fact_4952_sum__choose__upper,axiom,
    ! [M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [K2: nat] : ( binomial @ K2 @ M )
        @ ( set_ord_atMost_nat @ N ) )
      = ( binomial @ ( suc @ N ) @ ( suc @ M ) ) ) ).

% sum_choose_upper
thf(fact_4953_sum__choose__lower,axiom,
    ! [R: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [K2: nat] : ( binomial @ ( plus_plus_nat @ R @ K2 ) @ K2 )
        @ ( set_ord_atMost_nat @ N ) )
      = ( binomial @ ( suc @ ( plus_plus_nat @ R @ N ) ) @ N ) ) ).

% sum_choose_lower
thf(fact_4954_choose__rising__sum_I1_J,axiom,
    ! [N: nat,M: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [J3: nat] : ( binomial @ ( plus_plus_nat @ N @ J3 ) @ N )
        @ ( set_ord_atMost_nat @ M ) )
      = ( binomial @ ( plus_plus_nat @ ( plus_plus_nat @ N @ M ) @ one_one_nat ) @ ( plus_plus_nat @ N @ one_one_nat ) ) ) ).

% choose_rising_sum(1)
thf(fact_4955_choose__rising__sum_I2_J,axiom,
    ! [N: nat,M: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [J3: nat] : ( binomial @ ( plus_plus_nat @ N @ J3 ) @ N )
        @ ( set_ord_atMost_nat @ M ) )
      = ( binomial @ ( plus_plus_nat @ ( plus_plus_nat @ N @ M ) @ one_one_nat ) @ M ) ) ).

% choose_rising_sum(2)
thf(fact_4956_sum__choose__diagonal,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups3542108847815614940at_nat
          @ ^ [K2: nat] : ( binomial @ ( minus_minus_nat @ N @ K2 ) @ ( minus_minus_nat @ M @ K2 ) )
          @ ( set_ord_atMost_nat @ M ) )
        = ( binomial @ ( suc @ N ) @ M ) ) ) ).

% sum_choose_diagonal
thf(fact_4957_vandermonde,axiom,
    ! [M: nat,N: nat,R: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [K2: nat] : ( times_times_nat @ ( binomial @ M @ K2 ) @ ( binomial @ N @ ( minus_minus_nat @ R @ K2 ) ) )
        @ ( set_ord_atMost_nat @ R ) )
      = ( binomial @ ( plus_plus_nat @ M @ N ) @ R ) ) ).

% vandermonde
thf(fact_4958_choose__row__sum,axiom,
    ! [N: nat] :
      ( ( groups3542108847815614940at_nat @ ( binomial @ N ) @ ( set_ord_atMost_nat @ N ) )
      = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% choose_row_sum
thf(fact_4959_binomial,axiom,
    ! [A: nat,B: nat,N: nat] :
      ( ( power_power_nat @ ( plus_plus_nat @ A @ B ) @ N )
      = ( groups3542108847815614940at_nat
        @ ^ [K2: nat] : ( times_times_nat @ ( times_times_nat @ ( semiri1316708129612266289at_nat @ ( binomial @ N @ K2 ) ) @ ( power_power_nat @ A @ K2 ) ) @ ( power_power_nat @ B @ ( minus_minus_nat @ N @ K2 ) ) )
        @ ( set_ord_atMost_nat @ N ) ) ) ).

% binomial
thf(fact_4960_choose__square__sum,axiom,
    ! [N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [K2: nat] : ( power_power_nat @ ( binomial @ N @ K2 ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        @ ( set_ord_atMost_nat @ N ) )
      = ( binomial @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ N ) ) ).

% choose_square_sum
thf(fact_4961_gauss__sum__nat,axiom,
    ! [N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [X: nat] : X
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( divide_divide_nat @ ( times_times_nat @ N @ ( suc @ N ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% gauss_sum_nat
thf(fact_4962_binomial__r__part__sum,axiom,
    ! [M: nat] :
      ( ( groups3542108847815614940at_nat @ ( binomial @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) @ one_one_nat ) ) @ ( set_ord_atMost_nat @ M ) )
      = ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M ) ) ) ).

% binomial_r_part_sum
thf(fact_4963_choose__linear__sum,axiom,
    ! [N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( times_times_nat @ I2 @ ( binomial @ N @ I2 ) )
        @ ( set_ord_atMost_nat @ N ) )
      = ( times_times_nat @ N @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% choose_linear_sum
thf(fact_4964_arith__series__nat,axiom,
    ! [A: nat,D: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [I2: nat] : ( plus_plus_nat @ A @ ( times_times_nat @ I2 @ D ) )
        @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
      = ( divide_divide_nat @ ( times_times_nat @ ( suc @ N ) @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) @ ( times_times_nat @ N @ D ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% arith_series_nat
thf(fact_4965_Sum__Icc__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [X: nat] : X
        @ ( set_or1269000886237332187st_nat @ M @ N ) )
      = ( divide_divide_nat @ ( minus_minus_nat @ ( times_times_nat @ N @ ( plus_plus_nat @ N @ one_one_nat ) ) @ ( times_times_nat @ M @ ( minus_minus_nat @ M @ one_one_nat ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% Sum_Icc_nat
thf(fact_4966_Sum__Icc__int,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_eq_int @ M @ N )
     => ( ( groups4538972089207619220nt_int
          @ ^ [X: int] : X
          @ ( set_or1266510415728281911st_int @ M @ N ) )
        = ( divide_divide_int @ ( minus_minus_int @ ( times_times_int @ N @ ( plus_plus_int @ N @ one_one_int ) ) @ ( times_times_int @ M @ ( minus_minus_int @ M @ one_one_int ) ) ) @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ).

% Sum_Icc_int
thf(fact_4967_Sum__Ico__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( groups3542108847815614940at_nat
        @ ^ [X: nat] : X
        @ ( set_or4665077453230672383an_nat @ M @ N ) )
      = ( divide_divide_nat @ ( minus_minus_nat @ ( times_times_nat @ N @ ( minus_minus_nat @ N @ one_one_nat ) ) @ ( times_times_nat @ M @ ( minus_minus_nat @ M @ one_one_nat ) ) ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% Sum_Ico_nat
thf(fact_4968_sum__power2,axiom,
    ! [K: nat] :
      ( ( groups3542108847815614940at_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ K ) )
      = ( minus_minus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K ) @ one_one_nat ) ) ).

% sum_power2
thf(fact_4969_prod__Suc__Suc__fact,axiom,
    ! [N: nat] :
      ( ( groups708209901874060359at_nat @ suc @ ( set_or4665077453230672383an_nat @ ( suc @ zero_zero_nat ) @ N ) )
      = ( semiri1408675320244567234ct_nat @ N ) ) ).

% prod_Suc_Suc_fact
thf(fact_4970_prod__Suc__fact,axiom,
    ! [N: nat] :
      ( ( groups708209901874060359at_nat @ suc @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
      = ( semiri1408675320244567234ct_nat @ N ) ) ).

% prod_Suc_fact
thf(fact_4971_all__nat__less__eq,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [M2: nat] :
            ( ( ord_less_nat @ M2 @ N )
           => ( P @ M2 ) ) )
      = ( ! [X: nat] :
            ( ( member_nat @ X @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
           => ( P @ X ) ) ) ) ).

% all_nat_less_eq
thf(fact_4972_ex__nat__less__eq,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [M2: nat] :
            ( ( ord_less_nat @ M2 @ N )
            & ( P @ M2 ) ) )
      = ( ? [X: nat] :
            ( ( member_nat @ X @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
            & ( P @ X ) ) ) ) ).

% ex_nat_less_eq
thf(fact_4973_atLeastLessThanSuc__atLeastAtMost,axiom,
    ! [L: nat,U: nat] :
      ( ( set_or4665077453230672383an_nat @ L @ ( suc @ U ) )
      = ( set_or1269000886237332187st_nat @ L @ U ) ) ).

% atLeastLessThanSuc_atLeastAtMost
thf(fact_4974_bset_I1_J,axiom,
    ! [D3: int,B4: set_int,P: int > $o,Q: int > $o] :
      ( ! [X3: int] :
          ( ! [Xa2: int] :
              ( ( member_int @ Xa2 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
             => ! [Xb2: int] :
                  ( ( member_int @ Xb2 @ B4 )
                 => ( X3
                   != ( plus_plus_int @ Xb2 @ Xa2 ) ) ) )
         => ( ( P @ X3 )
           => ( P @ ( minus_minus_int @ X3 @ D3 ) ) ) )
     => ( ! [X3: int] :
            ( ! [Xa2: int] :
                ( ( member_int @ Xa2 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ B4 )
                   => ( X3
                     != ( plus_plus_int @ Xb2 @ Xa2 ) ) ) )
           => ( ( Q @ X3 )
             => ( Q @ ( minus_minus_int @ X3 @ D3 ) ) ) )
       => ! [X4: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb3: int] :
                    ( ( member_int @ Xb3 @ B4 )
                   => ( X4
                     != ( plus_plus_int @ Xb3 @ Xa3 ) ) ) )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
             => ( ( P @ ( minus_minus_int @ X4 @ D3 ) )
                & ( Q @ ( minus_minus_int @ X4 @ D3 ) ) ) ) ) ) ) ).

% bset(1)
thf(fact_4975_bset_I2_J,axiom,
    ! [D3: int,B4: set_int,P: int > $o,Q: int > $o] :
      ( ! [X3: int] :
          ( ! [Xa2: int] :
              ( ( member_int @ Xa2 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
             => ! [Xb2: int] :
                  ( ( member_int @ Xb2 @ B4 )
                 => ( X3
                   != ( plus_plus_int @ Xb2 @ Xa2 ) ) ) )
         => ( ( P @ X3 )
           => ( P @ ( minus_minus_int @ X3 @ D3 ) ) ) )
     => ( ! [X3: int] :
            ( ! [Xa2: int] :
                ( ( member_int @ Xa2 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ B4 )
                   => ( X3
                     != ( plus_plus_int @ Xb2 @ Xa2 ) ) ) )
           => ( ( Q @ X3 )
             => ( Q @ ( minus_minus_int @ X3 @ D3 ) ) ) )
       => ! [X4: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb3: int] :
                    ( ( member_int @ Xb3 @ B4 )
                   => ( X4
                     != ( plus_plus_int @ Xb3 @ Xa3 ) ) ) )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
             => ( ( P @ ( minus_minus_int @ X4 @ D3 ) )
                | ( Q @ ( minus_minus_int @ X4 @ D3 ) ) ) ) ) ) ) ).

% bset(2)
thf(fact_4976_aset_I1_J,axiom,
    ! [D3: int,A4: set_int,P: int > $o,Q: int > $o] :
      ( ! [X3: int] :
          ( ! [Xa2: int] :
              ( ( member_int @ Xa2 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
             => ! [Xb2: int] :
                  ( ( member_int @ Xb2 @ A4 )
                 => ( X3
                   != ( minus_minus_int @ Xb2 @ Xa2 ) ) ) )
         => ( ( P @ X3 )
           => ( P @ ( plus_plus_int @ X3 @ D3 ) ) ) )
     => ( ! [X3: int] :
            ( ! [Xa2: int] :
                ( ( member_int @ Xa2 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ A4 )
                   => ( X3
                     != ( minus_minus_int @ Xb2 @ Xa2 ) ) ) )
           => ( ( Q @ X3 )
             => ( Q @ ( plus_plus_int @ X3 @ D3 ) ) ) )
       => ! [X4: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb3: int] :
                    ( ( member_int @ Xb3 @ A4 )
                   => ( X4
                     != ( minus_minus_int @ Xb3 @ Xa3 ) ) ) )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
             => ( ( P @ ( plus_plus_int @ X4 @ D3 ) )
                & ( Q @ ( plus_plus_int @ X4 @ D3 ) ) ) ) ) ) ) ).

% aset(1)
thf(fact_4977_aset_I2_J,axiom,
    ! [D3: int,A4: set_int,P: int > $o,Q: int > $o] :
      ( ! [X3: int] :
          ( ! [Xa2: int] :
              ( ( member_int @ Xa2 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
             => ! [Xb2: int] :
                  ( ( member_int @ Xb2 @ A4 )
                 => ( X3
                   != ( minus_minus_int @ Xb2 @ Xa2 ) ) ) )
         => ( ( P @ X3 )
           => ( P @ ( plus_plus_int @ X3 @ D3 ) ) ) )
     => ( ! [X3: int] :
            ( ! [Xa2: int] :
                ( ( member_int @ Xa2 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb2: int] :
                    ( ( member_int @ Xb2 @ A4 )
                   => ( X3
                     != ( minus_minus_int @ Xb2 @ Xa2 ) ) ) )
           => ( ( Q @ X3 )
             => ( Q @ ( plus_plus_int @ X3 @ D3 ) ) ) )
       => ! [X4: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb3: int] :
                    ( ( member_int @ Xb3 @ A4 )
                   => ( X4
                     != ( minus_minus_int @ Xb3 @ Xa3 ) ) ) )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
             => ( ( P @ ( plus_plus_int @ X4 @ D3 ) )
                | ( Q @ ( plus_plus_int @ X4 @ D3 ) ) ) ) ) ) ) ).

% aset(2)
thf(fact_4978_bset_I9_J,axiom,
    ! [D: int,D3: int,B4: set_int,T: int] :
      ( ( dvd_dvd_int @ D @ D3 )
     => ! [X4: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
             => ! [Xb3: int] :
                  ( ( member_int @ Xb3 @ B4 )
                 => ( X4
                   != ( plus_plus_int @ Xb3 @ Xa3 ) ) ) )
         => ( ( dvd_dvd_int @ D @ ( plus_plus_int @ X4 @ T ) )
           => ( dvd_dvd_int @ D @ ( plus_plus_int @ ( minus_minus_int @ X4 @ D3 ) @ T ) ) ) ) ) ).

% bset(9)
thf(fact_4979_bset_I10_J,axiom,
    ! [D: int,D3: int,B4: set_int,T: int] :
      ( ( dvd_dvd_int @ D @ D3 )
     => ! [X4: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
             => ! [Xb3: int] :
                  ( ( member_int @ Xb3 @ B4 )
                 => ( X4
                   != ( plus_plus_int @ Xb3 @ Xa3 ) ) ) )
         => ( ~ ( dvd_dvd_int @ D @ ( plus_plus_int @ X4 @ T ) )
           => ~ ( dvd_dvd_int @ D @ ( plus_plus_int @ ( minus_minus_int @ X4 @ D3 ) @ T ) ) ) ) ) ).

% bset(10)
thf(fact_4980_aset_I9_J,axiom,
    ! [D: int,D3: int,A4: set_int,T: int] :
      ( ( dvd_dvd_int @ D @ D3 )
     => ! [X4: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
             => ! [Xb3: int] :
                  ( ( member_int @ Xb3 @ A4 )
                 => ( X4
                   != ( minus_minus_int @ Xb3 @ Xa3 ) ) ) )
         => ( ( dvd_dvd_int @ D @ ( plus_plus_int @ X4 @ T ) )
           => ( dvd_dvd_int @ D @ ( plus_plus_int @ ( plus_plus_int @ X4 @ D3 ) @ T ) ) ) ) ) ).

% aset(9)
thf(fact_4981_aset_I10_J,axiom,
    ! [D: int,D3: int,A4: set_int,T: int] :
      ( ( dvd_dvd_int @ D @ D3 )
     => ! [X4: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
             => ! [Xb3: int] :
                  ( ( member_int @ Xb3 @ A4 )
                 => ( X4
                   != ( minus_minus_int @ Xb3 @ Xa3 ) ) ) )
         => ( ~ ( dvd_dvd_int @ D @ ( plus_plus_int @ X4 @ T ) )
           => ~ ( dvd_dvd_int @ D @ ( plus_plus_int @ ( plus_plus_int @ X4 @ D3 ) @ T ) ) ) ) ) ).

% aset(10)
thf(fact_4982_periodic__finite__ex,axiom,
    ! [D: int,P: int > $o] :
      ( ( ord_less_int @ zero_zero_int @ D )
     => ( ! [X3: int,K3: int] :
            ( ( P @ X3 )
            = ( P @ ( minus_minus_int @ X3 @ ( times_times_int @ K3 @ D ) ) ) )
       => ( ( ? [X5: int] : ( P @ X5 ) )
          = ( ? [X: int] :
                ( ( member_int @ X @ ( set_or1266510415728281911st_int @ one_one_int @ D ) )
                & ( P @ X ) ) ) ) ) ) ).

% periodic_finite_ex
thf(fact_4983_bset_I3_J,axiom,
    ! [D3: int,T: int,B4: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D3 )
     => ( ( member_int @ ( minus_minus_int @ T @ one_one_int ) @ B4 )
       => ! [X4: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb3: int] :
                    ( ( member_int @ Xb3 @ B4 )
                   => ( X4
                     != ( plus_plus_int @ Xb3 @ Xa3 ) ) ) )
           => ( ( X4 = T )
             => ( ( minus_minus_int @ X4 @ D3 )
                = T ) ) ) ) ) ).

% bset(3)
thf(fact_4984_bset_I4_J,axiom,
    ! [D3: int,T: int,B4: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D3 )
     => ( ( member_int @ T @ B4 )
       => ! [X4: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb3: int] :
                    ( ( member_int @ Xb3 @ B4 )
                   => ( X4
                     != ( plus_plus_int @ Xb3 @ Xa3 ) ) ) )
           => ( ( X4 != T )
             => ( ( minus_minus_int @ X4 @ D3 )
               != T ) ) ) ) ) ).

% bset(4)
thf(fact_4985_bset_I5_J,axiom,
    ! [D3: int,B4: set_int,T: int] :
      ( ( ord_less_int @ zero_zero_int @ D3 )
     => ! [X4: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
             => ! [Xb3: int] :
                  ( ( member_int @ Xb3 @ B4 )
                 => ( X4
                   != ( plus_plus_int @ Xb3 @ Xa3 ) ) ) )
         => ( ( ord_less_int @ X4 @ T )
           => ( ord_less_int @ ( minus_minus_int @ X4 @ D3 ) @ T ) ) ) ) ).

% bset(5)
thf(fact_4986_bset_I7_J,axiom,
    ! [D3: int,T: int,B4: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D3 )
     => ( ( member_int @ T @ B4 )
       => ! [X4: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb3: int] :
                    ( ( member_int @ Xb3 @ B4 )
                   => ( X4
                     != ( plus_plus_int @ Xb3 @ Xa3 ) ) ) )
           => ( ( ord_less_int @ T @ X4 )
             => ( ord_less_int @ T @ ( minus_minus_int @ X4 @ D3 ) ) ) ) ) ) ).

% bset(7)
thf(fact_4987_aset_I3_J,axiom,
    ! [D3: int,T: int,A4: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D3 )
     => ( ( member_int @ ( plus_plus_int @ T @ one_one_int ) @ A4 )
       => ! [X4: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb3: int] :
                    ( ( member_int @ Xb3 @ A4 )
                   => ( X4
                     != ( minus_minus_int @ Xb3 @ Xa3 ) ) ) )
           => ( ( X4 = T )
             => ( ( plus_plus_int @ X4 @ D3 )
                = T ) ) ) ) ) ).

% aset(3)
thf(fact_4988_aset_I4_J,axiom,
    ! [D3: int,T: int,A4: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D3 )
     => ( ( member_int @ T @ A4 )
       => ! [X4: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb3: int] :
                    ( ( member_int @ Xb3 @ A4 )
                   => ( X4
                     != ( minus_minus_int @ Xb3 @ Xa3 ) ) ) )
           => ( ( X4 != T )
             => ( ( plus_plus_int @ X4 @ D3 )
               != T ) ) ) ) ) ).

% aset(4)
thf(fact_4989_aset_I5_J,axiom,
    ! [D3: int,T: int,A4: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D3 )
     => ( ( member_int @ T @ A4 )
       => ! [X4: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb3: int] :
                    ( ( member_int @ Xb3 @ A4 )
                   => ( X4
                     != ( minus_minus_int @ Xb3 @ Xa3 ) ) ) )
           => ( ( ord_less_int @ X4 @ T )
             => ( ord_less_int @ ( plus_plus_int @ X4 @ D3 ) @ T ) ) ) ) ) ).

% aset(5)
thf(fact_4990_aset_I7_J,axiom,
    ! [D3: int,A4: set_int,T: int] :
      ( ( ord_less_int @ zero_zero_int @ D3 )
     => ! [X4: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
             => ! [Xb3: int] :
                  ( ( member_int @ Xb3 @ A4 )
                 => ( X4
                   != ( minus_minus_int @ Xb3 @ Xa3 ) ) ) )
         => ( ( ord_less_int @ T @ X4 )
           => ( ord_less_int @ T @ ( plus_plus_int @ X4 @ D3 ) ) ) ) ) ).

% aset(7)
thf(fact_4991_fact__eq__fact__times,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( semiri1408675320244567234ct_nat @ M )
        = ( times_times_nat @ ( semiri1408675320244567234ct_nat @ N )
          @ ( groups708209901874060359at_nat
            @ ^ [X: nat] : X
            @ ( set_or1269000886237332187st_nat @ ( suc @ N ) @ M ) ) ) ) ) ).

% fact_eq_fact_times
thf(fact_4992_bset_I6_J,axiom,
    ! [D3: int,B4: set_int,T: int] :
      ( ( ord_less_int @ zero_zero_int @ D3 )
     => ! [X4: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
             => ! [Xb3: int] :
                  ( ( member_int @ Xb3 @ B4 )
                 => ( X4
                   != ( plus_plus_int @ Xb3 @ Xa3 ) ) ) )
         => ( ( ord_less_eq_int @ X4 @ T )
           => ( ord_less_eq_int @ ( minus_minus_int @ X4 @ D3 ) @ T ) ) ) ) ).

% bset(6)
thf(fact_4993_bset_I8_J,axiom,
    ! [D3: int,T: int,B4: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D3 )
     => ( ( member_int @ ( minus_minus_int @ T @ one_one_int ) @ B4 )
       => ! [X4: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb3: int] :
                    ( ( member_int @ Xb3 @ B4 )
                   => ( X4
                     != ( plus_plus_int @ Xb3 @ Xa3 ) ) ) )
           => ( ( ord_less_eq_int @ T @ X4 )
             => ( ord_less_eq_int @ T @ ( minus_minus_int @ X4 @ D3 ) ) ) ) ) ) ).

% bset(8)
thf(fact_4994_aset_I6_J,axiom,
    ! [D3: int,T: int,A4: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D3 )
     => ( ( member_int @ ( plus_plus_int @ T @ one_one_int ) @ A4 )
       => ! [X4: int] :
            ( ! [Xa3: int] :
                ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
               => ! [Xb3: int] :
                    ( ( member_int @ Xb3 @ A4 )
                   => ( X4
                     != ( minus_minus_int @ Xb3 @ Xa3 ) ) ) )
           => ( ( ord_less_eq_int @ X4 @ T )
             => ( ord_less_eq_int @ ( plus_plus_int @ X4 @ D3 ) @ T ) ) ) ) ) ).

% aset(6)
thf(fact_4995_aset_I8_J,axiom,
    ! [D3: int,A4: set_int,T: int] :
      ( ( ord_less_int @ zero_zero_int @ D3 )
     => ! [X4: int] :
          ( ! [Xa3: int] :
              ( ( member_int @ Xa3 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
             => ! [Xb3: int] :
                  ( ( member_int @ Xb3 @ A4 )
                 => ( X4
                   != ( minus_minus_int @ Xb3 @ Xa3 ) ) ) )
         => ( ( ord_less_eq_int @ T @ X4 )
           => ( ord_less_eq_int @ T @ ( plus_plus_int @ X4 @ D3 ) ) ) ) ) ).

% aset(8)
thf(fact_4996_cppi,axiom,
    ! [D3: int,P: int > $o,P2: int > $o,A4: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D3 )
     => ( ? [Z5: int] :
          ! [X3: int] :
            ( ( ord_less_int @ Z5 @ X3 )
           => ( ( P @ X3 )
              = ( P2 @ X3 ) ) )
       => ( ! [X3: int] :
              ( ! [Xa2: int] :
                  ( ( member_int @ Xa2 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
                 => ! [Xb2: int] :
                      ( ( member_int @ Xb2 @ A4 )
                     => ( X3
                       != ( minus_minus_int @ Xb2 @ Xa2 ) ) ) )
             => ( ( P @ X3 )
               => ( P @ ( plus_plus_int @ X3 @ D3 ) ) ) )
         => ( ! [X3: int,K3: int] :
                ( ( P2 @ X3 )
                = ( P2 @ ( minus_minus_int @ X3 @ ( times_times_int @ K3 @ D3 ) ) ) )
           => ( ( ? [X5: int] : ( P @ X5 ) )
              = ( ? [X: int] :
                    ( ( member_int @ X @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
                    & ( P2 @ X ) )
                | ? [X: int] :
                    ( ( member_int @ X @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
                    & ? [Y4: int] :
                        ( ( member_int @ Y4 @ A4 )
                        & ( P @ ( minus_minus_int @ Y4 @ X ) ) ) ) ) ) ) ) ) ) ).

% cppi
thf(fact_4997_cpmi,axiom,
    ! [D3: int,P: int > $o,P2: int > $o,B4: set_int] :
      ( ( ord_less_int @ zero_zero_int @ D3 )
     => ( ? [Z5: int] :
          ! [X3: int] :
            ( ( ord_less_int @ X3 @ Z5 )
           => ( ( P @ X3 )
              = ( P2 @ X3 ) ) )
       => ( ! [X3: int] :
              ( ! [Xa2: int] :
                  ( ( member_int @ Xa2 @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
                 => ! [Xb2: int] :
                      ( ( member_int @ Xb2 @ B4 )
                     => ( X3
                       != ( plus_plus_int @ Xb2 @ Xa2 ) ) ) )
             => ( ( P @ X3 )
               => ( P @ ( minus_minus_int @ X3 @ D3 ) ) ) )
         => ( ! [X3: int,K3: int] :
                ( ( P2 @ X3 )
                = ( P2 @ ( minus_minus_int @ X3 @ ( times_times_int @ K3 @ D3 ) ) ) )
           => ( ( ? [X5: int] : ( P @ X5 ) )
              = ( ? [X: int] :
                    ( ( member_int @ X @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
                    & ( P2 @ X ) )
                | ? [X: int] :
                    ( ( member_int @ X @ ( set_or1266510415728281911st_int @ one_one_int @ D3 ) )
                    & ? [Y4: int] :
                        ( ( member_int @ Y4 @ B4 )
                        & ( P @ ( plus_plus_int @ Y4 @ X ) ) ) ) ) ) ) ) ) ) ).

% cpmi
thf(fact_4998_fact__div__fact,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( divide_divide_nat @ ( semiri1408675320244567234ct_nat @ M ) @ ( semiri1408675320244567234ct_nat @ N ) )
        = ( groups708209901874060359at_nat
          @ ^ [X: nat] : X
          @ ( set_or1269000886237332187st_nat @ ( plus_plus_nat @ N @ one_one_nat ) @ M ) ) ) ) ).

% fact_div_fact
thf(fact_4999_integer__of__int__code,axiom,
    ( code_integer_of_int
    = ( ^ [K2: int] :
          ( if_Code_integer @ ( ord_less_int @ K2 @ zero_zero_int ) @ ( uminus1351360451143612070nteger @ ( code_integer_of_int @ ( uminus_uminus_int @ K2 ) ) )
          @ ( if_Code_integer @ ( K2 = zero_zero_int ) @ zero_z3403309356797280102nteger
            @ ( if_Code_integer
              @ ( ( modulo_modulo_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
                = zero_zero_int )
              @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( code_integer_of_int @ ( divide_divide_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) )
              @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ ( code_integer_of_int @ ( divide_divide_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) @ one_one_Code_integer ) ) ) ) ) ) ).

% integer_of_int_code
thf(fact_5000_or__int__rec,axiom,
    ( bit_se1409905431419307370or_int
    = ( ^ [K2: int,L2: int] :
          ( plus_plus_int
          @ ( zero_n2684676970156552555ol_int
            @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K2 )
              | ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L2 ) ) )
          @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se1409905431419307370or_int @ ( divide_divide_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% or_int_rec
thf(fact_5001_integer__of__int__eq__of__int,axiom,
    code_integer_of_int = ring_18347121197199848620nteger ).

% integer_of_int_eq_of_int
thf(fact_5002_finite__atLeastAtMost,axiom,
    ! [L: nat,U: nat] : ( finite_finite_nat @ ( set_or1269000886237332187st_nat @ L @ U ) ) ).

% finite_atLeastAtMost
thf(fact_5003_finite__atLeastLessThan,axiom,
    ! [L: nat,U: nat] : ( finite_finite_nat @ ( set_or4665077453230672383an_nat @ L @ U ) ) ).

% finite_atLeastLessThan
thf(fact_5004_finite__atMost,axiom,
    ! [K: nat] : ( finite_finite_nat @ ( set_ord_atMost_nat @ K ) ) ).

% finite_atMost
thf(fact_5005_or__nonnegative__int__iff,axiom,
    ! [K: int,L: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se1409905431419307370or_int @ K @ L ) )
      = ( ( ord_less_eq_int @ zero_zero_int @ K )
        & ( ord_less_eq_int @ zero_zero_int @ L ) ) ) ).

% or_nonnegative_int_iff
thf(fact_5006_or__negative__int__iff,axiom,
    ! [K: int,L: int] :
      ( ( ord_less_int @ ( bit_se1409905431419307370or_int @ K @ L ) @ zero_zero_int )
      = ( ( ord_less_int @ K @ zero_zero_int )
        | ( ord_less_int @ L @ zero_zero_int ) ) ) ).

% or_negative_int_iff
thf(fact_5007_or__nat__numerals_I4_J,axiom,
    ! [X2: num] :
      ( ( bit_se1412395901928357646or_nat @ ( numeral_numeral_nat @ ( bit1 @ X2 ) ) @ ( suc @ zero_zero_nat ) )
      = ( numeral_numeral_nat @ ( bit1 @ X2 ) ) ) ).

% or_nat_numerals(4)
thf(fact_5008_or__nat__numerals_I2_J,axiom,
    ! [Y: num] :
      ( ( bit_se1412395901928357646or_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit1 @ Y ) ) )
      = ( numeral_numeral_nat @ ( bit1 @ Y ) ) ) ).

% or_nat_numerals(2)
thf(fact_5009_or__nat__numerals_I1_J,axiom,
    ! [Y: num] :
      ( ( bit_se1412395901928357646or_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ ( bit0 @ Y ) ) )
      = ( numeral_numeral_nat @ ( bit1 @ Y ) ) ) ).

% or_nat_numerals(1)
thf(fact_5010_or__nat__numerals_I3_J,axiom,
    ! [X2: num] :
      ( ( bit_se1412395901928357646or_nat @ ( numeral_numeral_nat @ ( bit0 @ X2 ) ) @ ( suc @ zero_zero_nat ) )
      = ( numeral_numeral_nat @ ( bit1 @ X2 ) ) ) ).

% or_nat_numerals(3)
thf(fact_5011_or__minus__numerals_I2_J,axiom,
    ! [N: num] :
      ( ( bit_se1409905431419307370or_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) ) ).

% or_minus_numerals(2)
thf(fact_5012_or__minus__numerals_I6_J,axiom,
    ! [N: num] :
      ( ( bit_se1409905431419307370or_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) @ one_one_int )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) ) ).

% or_minus_numerals(6)
thf(fact_5013_and__minus__minus__numerals,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( bit_ri7919022796975470100ot_int @ ( bit_se1409905431419307370or_int @ ( minus_minus_int @ ( numeral_numeral_int @ M ) @ one_one_int ) @ ( minus_minus_int @ ( numeral_numeral_int @ N ) @ one_one_int ) ) ) ) ).

% and_minus_minus_numerals
thf(fact_5014_or__minus__minus__numerals,axiom,
    ! [M: num,N: num] :
      ( ( bit_se1409905431419307370or_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( bit_ri7919022796975470100ot_int @ ( bit_se725231765392027082nd_int @ ( minus_minus_int @ ( numeral_numeral_int @ M ) @ one_one_int ) @ ( minus_minus_int @ ( numeral_numeral_int @ N ) @ one_one_int ) ) ) ) ).

% or_minus_minus_numerals
thf(fact_5015_atLeastLessThanPlusOne__atLeastAtMost__integer,axiom,
    ! [L: code_integer,U: code_integer] :
      ( ( set_or8404916559141939852nteger @ L @ ( plus_p5714425477246183910nteger @ U @ one_one_Code_integer ) )
      = ( set_or189985376899183464nteger @ L @ U ) ) ).

% atLeastLessThanPlusOne_atLeastAtMost_integer
thf(fact_5016_or__nat__def,axiom,
    ( bit_se1412395901928357646or_nat
    = ( ^ [M2: nat,N3: nat] : ( nat2 @ ( bit_se1409905431419307370or_int @ ( semiri1314217659103216013at_int @ M2 ) @ ( semiri1314217659103216013at_int @ N3 ) ) ) ) ) ).

% or_nat_def
thf(fact_5017_less__eq__integer_Oabs__eq,axiom,
    ! [Xa: int,X2: int] :
      ( ( ord_le3102999989581377725nteger @ ( code_integer_of_int @ Xa ) @ ( code_integer_of_int @ X2 ) )
      = ( ord_less_eq_int @ Xa @ X2 ) ) ).

% less_eq_integer.abs_eq
thf(fact_5018_less__integer_Oabs__eq,axiom,
    ! [Xa: int,X2: int] :
      ( ( ord_le6747313008572928689nteger @ ( code_integer_of_int @ Xa ) @ ( code_integer_of_int @ X2 ) )
      = ( ord_less_int @ Xa @ X2 ) ) ).

% less_integer.abs_eq
thf(fact_5019_one__integer__def,axiom,
    ( one_one_Code_integer
    = ( code_integer_of_int @ one_one_int ) ) ).

% one_integer_def
thf(fact_5020_times__integer_Oabs__eq,axiom,
    ! [Xa: int,X2: int] :
      ( ( times_3573771949741848930nteger @ ( code_integer_of_int @ Xa ) @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( times_times_int @ Xa @ X2 ) ) ) ).

% times_integer.abs_eq
thf(fact_5021_uminus__integer_Oabs__eq,axiom,
    ! [X2: int] :
      ( ( uminus1351360451143612070nteger @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( uminus_uminus_int @ X2 ) ) ) ).

% uminus_integer.abs_eq
thf(fact_5022_zero__integer__def,axiom,
    ( zero_z3403309356797280102nteger
    = ( code_integer_of_int @ zero_zero_int ) ) ).

% zero_integer_def
thf(fact_5023_sgn__integer__code,axiom,
    ( sgn_sgn_Code_integer
    = ( ^ [K2: code_integer] : ( if_Code_integer @ ( K2 = zero_z3403309356797280102nteger ) @ zero_z3403309356797280102nteger @ ( if_Code_integer @ ( ord_le6747313008572928689nteger @ K2 @ zero_z3403309356797280102nteger ) @ ( uminus1351360451143612070nteger @ one_one_Code_integer ) @ one_one_Code_integer ) ) ) ) ).

% sgn_integer_code
thf(fact_5024_abs__integer__code,axiom,
    ( abs_abs_Code_integer
    = ( ^ [K2: code_integer] : ( if_Code_integer @ ( ord_le6747313008572928689nteger @ K2 @ zero_z3403309356797280102nteger ) @ ( uminus1351360451143612070nteger @ K2 ) @ K2 ) ) ) ).

% abs_integer_code
thf(fact_5025_less__integer__code_I1_J,axiom,
    ~ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger ) ).

% less_integer_code(1)
thf(fact_5026_minus__integer__code_I2_J,axiom,
    ! [L: code_integer] :
      ( ( minus_8373710615458151222nteger @ zero_z3403309356797280102nteger @ L )
      = ( uminus1351360451143612070nteger @ L ) ) ).

% minus_integer_code(2)
thf(fact_5027_minus__integer__code_I1_J,axiom,
    ! [K: code_integer] :
      ( ( minus_8373710615458151222nteger @ K @ zero_z3403309356797280102nteger )
      = K ) ).

% minus_integer_code(1)
thf(fact_5028_uminus__integer__code_I1_J,axiom,
    ( ( uminus1351360451143612070nteger @ zero_z3403309356797280102nteger )
    = zero_z3403309356797280102nteger ) ).

% uminus_integer_code(1)
thf(fact_5029_or__integer_Oabs__eq,axiom,
    ! [Xa: int,X2: int] :
      ( ( bit_se1080825931792720795nteger @ ( code_integer_of_int @ Xa ) @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( bit_se1409905431419307370or_int @ Xa @ X2 ) ) ) ).

% or_integer.abs_eq
thf(fact_5030_plus__integer__code_I2_J,axiom,
    ! [L: code_integer] :
      ( ( plus_p5714425477246183910nteger @ zero_z3403309356797280102nteger @ L )
      = L ) ).

% plus_integer_code(2)
thf(fact_5031_plus__integer__code_I1_J,axiom,
    ! [K: code_integer] :
      ( ( plus_p5714425477246183910nteger @ K @ zero_z3403309356797280102nteger )
      = K ) ).

% plus_integer_code(1)
thf(fact_5032_times__integer__code_I1_J,axiom,
    ! [K: code_integer] :
      ( ( times_3573771949741848930nteger @ K @ zero_z3403309356797280102nteger )
      = zero_z3403309356797280102nteger ) ).

% times_integer_code(1)
thf(fact_5033_times__integer__code_I2_J,axiom,
    ! [L: code_integer] :
      ( ( times_3573771949741848930nteger @ zero_z3403309356797280102nteger @ L )
      = zero_z3403309356797280102nteger ) ).

% times_integer_code(2)
thf(fact_5034_plus__integer_Oabs__eq,axiom,
    ! [Xa: int,X2: int] :
      ( ( plus_p5714425477246183910nteger @ ( code_integer_of_int @ Xa ) @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( plus_plus_int @ Xa @ X2 ) ) ) ).

% plus_integer.abs_eq
thf(fact_5035_minus__integer_Oabs__eq,axiom,
    ! [Xa: int,X2: int] :
      ( ( minus_8373710615458151222nteger @ ( code_integer_of_int @ Xa ) @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( minus_minus_int @ Xa @ X2 ) ) ) ).

% minus_integer.abs_eq
thf(fact_5036_abs__integer_Oabs__eq,axiom,
    ! [X2: int] :
      ( ( abs_abs_Code_integer @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( abs_abs_int @ X2 ) ) ) ).

% abs_integer.abs_eq
thf(fact_5037_divide__integer_Oabs__eq,axiom,
    ! [Xa: int,X2: int] :
      ( ( divide6298287555418463151nteger @ ( code_integer_of_int @ Xa ) @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( divide_divide_int @ Xa @ X2 ) ) ) ).

% divide_integer.abs_eq
thf(fact_5038_modulo__integer_Oabs__eq,axiom,
    ! [Xa: int,X2: int] :
      ( ( modulo364778990260209775nteger @ ( code_integer_of_int @ Xa ) @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( modulo_modulo_int @ Xa @ X2 ) ) ) ).

% modulo_integer.abs_eq
thf(fact_5039_take__bit__integer_Oabs__eq,axiom,
    ! [Xa: nat,X2: int] :
      ( ( bit_se1745604003318907178nteger @ Xa @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( bit_se2923211474154528505it_int @ Xa @ X2 ) ) ) ).

% take_bit_integer.abs_eq
thf(fact_5040_not__integer_Oabs__eq,axiom,
    ! [X2: int] :
      ( ( bit_ri7632146776885996613nteger @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( bit_ri7919022796975470100ot_int @ X2 ) ) ) ).

% not_integer.abs_eq
thf(fact_5041_and__integer_Oabs__eq,axiom,
    ! [Xa: int,X2: int] :
      ( ( bit_se3949692690581998587nteger @ ( code_integer_of_int @ Xa ) @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( bit_se725231765392027082nd_int @ Xa @ X2 ) ) ) ).

% and_integer.abs_eq
thf(fact_5042_bounded__nat__set__is__finite,axiom,
    ! [N4: set_nat,N: nat] :
      ( ! [X3: nat] :
          ( ( member_nat @ X3 @ N4 )
         => ( ord_less_nat @ X3 @ N ) )
     => ( finite_finite_nat @ N4 ) ) ).

% bounded_nat_set_is_finite
thf(fact_5043_finite__nat__set__iff__bounded,axiom,
    ( finite_finite_nat
    = ( ^ [N8: set_nat] :
        ? [M2: nat] :
        ! [X: nat] :
          ( ( member_nat @ X @ N8 )
         => ( ord_less_nat @ X @ M2 ) ) ) ) ).

% finite_nat_set_iff_bounded
thf(fact_5044_sgn__integer_Oabs__eq,axiom,
    ! [X2: int] :
      ( ( sgn_sgn_Code_integer @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( sgn_sgn_int @ X2 ) ) ) ).

% sgn_integer.abs_eq
thf(fact_5045_finite__nat__set__iff__bounded__le,axiom,
    ( finite_finite_nat
    = ( ^ [N8: set_nat] :
        ? [M2: nat] :
        ! [X: nat] :
          ( ( member_nat @ X @ N8 )
         => ( ord_less_eq_nat @ X @ M2 ) ) ) ) ).

% finite_nat_set_iff_bounded_le
thf(fact_5046_bit__integer_Oabs__eq,axiom,
    ! [X2: int] :
      ( ( bit_se9216721137139052372nteger @ ( code_integer_of_int @ X2 ) )
      = ( bit_se1146084159140164899it_int @ X2 ) ) ).

% bit_integer.abs_eq
thf(fact_5047_xor__integer_Oabs__eq,axiom,
    ! [Xa: int,X2: int] :
      ( ( bit_se3222712562003087583nteger @ ( code_integer_of_int @ Xa ) @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( bit_se6526347334894502574or_int @ Xa @ X2 ) ) ) ).

% xor_integer.abs_eq
thf(fact_5048_push__bit__integer_Oabs__eq,axiom,
    ! [Xa: nat,X2: int] :
      ( ( bit_se7788150548672797655nteger @ Xa @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( bit_se545348938243370406it_int @ Xa @ X2 ) ) ) ).

% push_bit_integer.abs_eq
thf(fact_5049_mask__integer_Oabs__eq,axiom,
    ( bit_se2119862282449309892nteger
    = ( ^ [X: nat] : ( code_integer_of_int @ ( bit_se2000444600071755411sk_int @ X ) ) ) ) ).

% mask_integer.abs_eq
thf(fact_5050_unset__bit__integer_Oabs__eq,axiom,
    ! [Xa: nat,X2: int] :
      ( ( bit_se8260200283734997820nteger @ Xa @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( bit_se4203085406695923979it_int @ Xa @ X2 ) ) ) ).

% unset_bit_integer.abs_eq
thf(fact_5051_set__bit__integer_Oabs__eq,axiom,
    ! [Xa: nat,X2: int] :
      ( ( bit_se2793503036327961859nteger @ Xa @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( bit_se7879613467334960850it_int @ Xa @ X2 ) ) ) ).

% set_bit_integer.abs_eq
thf(fact_5052_flip__bit__integer_Oabs__eq,axiom,
    ! [Xa: nat,X2: int] :
      ( ( bit_se1345352211410354436nteger @ Xa @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( bit_se2159334234014336723it_int @ Xa @ X2 ) ) ) ).

% flip_bit_integer.abs_eq
thf(fact_5053_finite__M__bounded__by__nat,axiom,
    ! [P: nat > $o,I: nat] :
      ( finite_finite_nat
      @ ( collect_nat
        @ ^ [K2: nat] :
            ( ( P @ K2 )
            & ( ord_less_nat @ K2 @ I ) ) ) ) ).

% finite_M_bounded_by_nat
thf(fact_5054_finite__less__ub,axiom,
    ! [F: nat > nat,U: nat] :
      ( ! [N2: nat] : ( ord_less_eq_nat @ N2 @ ( F @ N2 ) )
     => ( finite_finite_nat
        @ ( collect_nat
          @ ^ [N3: nat] : ( ord_less_eq_nat @ ( F @ N3 ) @ U ) ) ) ) ).

% finite_less_ub
thf(fact_5055_or__greater__eq,axiom,
    ! [L: int,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ L )
     => ( ord_less_eq_int @ K @ ( bit_se1409905431419307370or_int @ K @ L ) ) ) ).

% or_greater_eq
thf(fact_5056_OR__lower,axiom,
    ! [X2: int,Y: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X2 )
     => ( ( ord_less_eq_int @ zero_zero_int @ Y )
       => ( ord_less_eq_int @ zero_zero_int @ ( bit_se1409905431419307370or_int @ X2 @ Y ) ) ) ) ).

% OR_lower
thf(fact_5057_plus__and__or,axiom,
    ! [X2: int,Y: int] :
      ( ( plus_plus_int @ ( bit_se725231765392027082nd_int @ X2 @ Y ) @ ( bit_se1409905431419307370or_int @ X2 @ Y ) )
      = ( plus_plus_int @ X2 @ Y ) ) ).

% plus_and_or
thf(fact_5058_nat_Odisc__eq__case_I1_J,axiom,
    ! [Nat: nat] :
      ( ( Nat = zero_zero_nat )
      = ( case_nat_o @ $true
        @ ^ [Uu: nat] : $false
        @ Nat ) ) ).

% nat.disc_eq_case(1)
thf(fact_5059_nat_Odisc__eq__case_I2_J,axiom,
    ! [Nat: nat] :
      ( ( Nat != zero_zero_nat )
      = ( case_nat_o @ $false
        @ ^ [Uu: nat] : $true
        @ Nat ) ) ).

% nat.disc_eq_case(2)
thf(fact_5060_set__bit__nat__def,axiom,
    ( bit_se7882103937844011126it_nat
    = ( ^ [M2: nat,N3: nat] : ( bit_se1412395901928357646or_nat @ N3 @ ( bit_se547839408752420682it_nat @ M2 @ one_one_nat ) ) ) ) ).

% set_bit_nat_def
thf(fact_5061_or__not__numerals_I1_J,axiom,
    ( ( bit_se1409905431419307370or_int @ one_one_int @ ( bit_ri7919022796975470100ot_int @ one_one_int ) )
    = ( bit_ri7919022796975470100ot_int @ zero_zero_int ) ) ).

% or_not_numerals(1)
thf(fact_5062_atLeastLessThanPlusOne__atLeastAtMost__int,axiom,
    ! [L: int,U: int] :
      ( ( set_or4662586982721622107an_int @ L @ ( plus_plus_int @ U @ one_one_int ) )
      = ( set_or1266510415728281911st_int @ L @ U ) ) ).

% atLeastLessThanPlusOne_atLeastAtMost_int
thf(fact_5063_prod__int__eq,axiom,
    ! [I: nat,J: nat] :
      ( ( groups705719431365010083at_int @ semiri1314217659103216013at_int @ ( set_or1269000886237332187st_nat @ I @ J ) )
      = ( groups1705073143266064639nt_int
        @ ^ [X: int] : X
        @ ( set_or1266510415728281911st_int @ ( semiri1314217659103216013at_int @ I ) @ ( semiri1314217659103216013at_int @ J ) ) ) ) ).

% prod_int_eq
thf(fact_5064_set__bit__int__def,axiom,
    ( bit_se7879613467334960850it_int
    = ( ^ [N3: nat,K2: int] : ( bit_se1409905431419307370or_int @ K2 @ ( bit_se545348938243370406it_int @ N3 @ one_one_int ) ) ) ) ).

% set_bit_int_def
thf(fact_5065_less__eq__nat_Osimps_I2_J,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M ) @ N )
      = ( case_nat_o @ $false @ ( ord_less_eq_nat @ M ) @ N ) ) ).

% less_eq_nat.simps(2)
thf(fact_5066_finite__divisors__nat,axiom,
    ! [M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( finite_finite_nat
        @ ( collect_nat
          @ ^ [D4: nat] : ( dvd_dvd_nat @ D4 @ M ) ) ) ) ).

% finite_divisors_nat
thf(fact_5067_subset__eq__atLeast0__atMost__finite,axiom,
    ! [N4: set_nat,N: nat] :
      ( ( ord_less_eq_set_nat @ N4 @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) )
     => ( finite_finite_nat @ N4 ) ) ).

% subset_eq_atLeast0_atMost_finite
thf(fact_5068_subset__eq__atLeast0__lessThan__finite,axiom,
    ! [N4: set_nat,N: nat] :
      ( ( ord_less_eq_set_nat @ N4 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
     => ( finite_finite_nat @ N4 ) ) ).

% subset_eq_atLeast0_lessThan_finite
thf(fact_5069_or__not__numerals_I2_J,axiom,
    ! [N: num] :
      ( ( bit_se1409905431419307370or_int @ one_one_int @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) ) ).

% or_not_numerals(2)
thf(fact_5070_or__not__numerals_I4_J,axiom,
    ! [M: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit0 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ one_one_int ) )
      = ( bit_ri7919022796975470100ot_int @ one_one_int ) ) ).

% or_not_numerals(4)
thf(fact_5071_prod__int__plus__eq,axiom,
    ! [I: nat,J: nat] :
      ( ( groups705719431365010083at_int @ semiri1314217659103216013at_int @ ( set_or1269000886237332187st_nat @ I @ ( plus_plus_nat @ I @ J ) ) )
      = ( groups1705073143266064639nt_int
        @ ^ [X: int] : X
        @ ( set_or1266510415728281911st_int @ ( semiri1314217659103216013at_int @ I ) @ ( semiri1314217659103216013at_int @ ( plus_plus_nat @ I @ J ) ) ) ) ) ).

% prod_int_plus_eq
thf(fact_5072_diff__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ M @ ( suc @ N ) )
      = ( case_nat_nat @ zero_zero_nat
        @ ^ [K2: nat] : K2
        @ ( minus_minus_nat @ M @ N ) ) ) ).

% diff_Suc
thf(fact_5073_or__not__numerals_I3_J,axiom,
    ! [N: num] :
      ( ( bit_se1409905431419307370or_int @ one_one_int @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) ) ).

% or_not_numerals(3)
thf(fact_5074_or__not__numerals_I7_J,axiom,
    ! [M: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit1 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ one_one_int ) )
      = ( bit_ri7919022796975470100ot_int @ zero_zero_int ) ) ).

% or_not_numerals(7)
thf(fact_5075_OR__upper,axiom,
    ! [X2: int,N: nat,Y: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ X2 )
     => ( ( ord_less_int @ X2 @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
       => ( ( ord_less_int @ Y @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) )
         => ( ord_less_int @ ( bit_se1409905431419307370or_int @ X2 @ Y ) @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ N ) ) ) ) ) ).

% OR_upper
thf(fact_5076_or__not__numerals_I5_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit0 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) ) ) ) ) ).

% or_not_numerals(5)
thf(fact_5077_or__Suc__0__eq,axiom,
    ! [N: nat] :
      ( ( bit_se1412395901928357646or_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( plus_plus_nat @ N @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% or_Suc_0_eq
thf(fact_5078_Suc__0__or__eq,axiom,
    ! [N: nat] :
      ( ( bit_se1412395901928357646or_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( plus_plus_nat @ N @ ( zero_n2687167440665602831ol_nat @ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ) ).

% Suc_0_or_eq
thf(fact_5079_or__not__numerals_I9_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit1 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) ) ) ) ) ).

% or_not_numerals(9)
thf(fact_5080_or__not__numerals_I8_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ ( bit1 @ M ) ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se1409905431419307370or_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) ) ) ) ) ).

% or_not_numerals(8)
thf(fact_5081_or__nat__rec,axiom,
    ( bit_se1412395901928357646or_nat
    = ( ^ [M2: nat,N3: nat] :
          ( plus_plus_nat
          @ ( zero_n2687167440665602831ol_nat
            @ ( ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ M2 )
              | ~ ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N3 ) ) )
          @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se1412395901928357646or_nat @ ( divide_divide_nat @ M2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% or_nat_rec
thf(fact_5082_finite__Collect__le__nat,axiom,
    ! [K: nat] :
      ( finite_finite_nat
      @ ( collect_nat
        @ ^ [N3: nat] : ( ord_less_eq_nat @ N3 @ K ) ) ) ).

% finite_Collect_le_nat
thf(fact_5083_finite__Collect__less__nat,axiom,
    ! [K: nat] :
      ( finite_finite_nat
      @ ( collect_nat
        @ ^ [N3: nat] : ( ord_less_nat @ N3 @ K ) ) ) ).

% finite_Collect_less_nat
thf(fact_5084_finite__atLeastAtMost__int,axiom,
    ! [L: int,U: int] : ( finite_finite_int @ ( set_or1266510415728281911st_int @ L @ U ) ) ).

% finite_atLeastAtMost_int
thf(fact_5085_finite__atLeastLessThan__int,axiom,
    ! [L: int,U: int] : ( finite_finite_int @ ( set_or4662586982721622107an_int @ L @ U ) ) ).

% finite_atLeastLessThan_int
thf(fact_5086_finite__interval__int1,axiom,
    ! [A: int,B: int] :
      ( finite_finite_int
      @ ( collect_int
        @ ^ [I2: int] :
            ( ( ord_less_eq_int @ A @ I2 )
            & ( ord_less_eq_int @ I2 @ B ) ) ) ) ).

% finite_interval_int1
thf(fact_5087_finite__interval__int4,axiom,
    ! [A: int,B: int] :
      ( finite_finite_int
      @ ( collect_int
        @ ^ [I2: int] :
            ( ( ord_less_int @ A @ I2 )
            & ( ord_less_int @ I2 @ B ) ) ) ) ).

% finite_interval_int4
thf(fact_5088_finite__atLeastLessThan__integer,axiom,
    ! [L: code_integer,U: code_integer] : ( finite6017078050557962740nteger @ ( set_or8404916559141939852nteger @ L @ U ) ) ).

% finite_atLeastLessThan_integer
thf(fact_5089_finite__atLeastAtMost__integer,axiom,
    ! [L: code_integer,U: code_integer] : ( finite6017078050557962740nteger @ ( set_or189985376899183464nteger @ L @ U ) ) ).

% finite_atLeastAtMost_integer
thf(fact_5090_finite__interval__int3,axiom,
    ! [A: int,B: int] :
      ( finite_finite_int
      @ ( collect_int
        @ ^ [I2: int] :
            ( ( ord_less_int @ A @ I2 )
            & ( ord_less_eq_int @ I2 @ B ) ) ) ) ).

% finite_interval_int3
thf(fact_5091_finite__interval__int2,axiom,
    ! [A: int,B: int] :
      ( finite_finite_int
      @ ( collect_int
        @ ^ [I2: int] :
            ( ( ord_less_eq_int @ A @ I2 )
            & ( ord_less_int @ I2 @ B ) ) ) ) ).

% finite_interval_int2
thf(fact_5092_finite__atLeastZeroLessThan__int,axiom,
    ! [U: int] : ( finite_finite_int @ ( set_or4662586982721622107an_int @ zero_zero_int @ U ) ) ).

% finite_atLeastZeroLessThan_int
thf(fact_5093_finite__atLeastZeroLessThan__integer,axiom,
    ! [U: code_integer] : ( finite6017078050557962740nteger @ ( set_or8404916559141939852nteger @ zero_z3403309356797280102nteger @ U ) ) ).

% finite_atLeastZeroLessThan_integer
thf(fact_5094_finite__divisors__int,axiom,
    ! [I: int] :
      ( ( I != zero_zero_int )
     => ( finite_finite_int
        @ ( collect_int
          @ ^ [D4: int] : ( dvd_dvd_int @ D4 @ I ) ) ) ) ).

% finite_divisors_int
thf(fact_5095_or__int__unfold,axiom,
    ( bit_se1409905431419307370or_int
    = ( ^ [K2: int,L2: int] :
          ( if_int
          @ ( ( K2
              = ( uminus_uminus_int @ one_one_int ) )
            | ( L2
              = ( uminus_uminus_int @ one_one_int ) ) )
          @ ( uminus_uminus_int @ one_one_int )
          @ ( if_int @ ( K2 = zero_zero_int ) @ L2 @ ( if_int @ ( L2 = zero_zero_int ) @ K2 @ ( plus_plus_int @ ( ord_max_int @ ( modulo_modulo_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( modulo_modulo_int @ L2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se1409905431419307370or_int @ ( divide_divide_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ).

% or_int_unfold
thf(fact_5096_even__set__encode__iff,axiom,
    ! [A4: set_nat] :
      ( ( finite_finite_nat @ A4 )
     => ( ( dvd_dvd_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( nat_set_encode @ A4 ) )
        = ( ~ ( member_nat @ zero_zero_nat @ A4 ) ) ) ) ).

% even_set_encode_iff
thf(fact_5097_Code__Numeral_Opositive__def,axiom,
    code_positive = numera6620942414471956472nteger ).

% Code_Numeral.positive_def
thf(fact_5098_or__nat__unfold,axiom,
    ( bit_se1412395901928357646or_nat
    = ( ^ [M2: nat,N3: nat] : ( if_nat @ ( M2 = zero_zero_nat ) @ N3 @ ( if_nat @ ( N3 = zero_zero_nat ) @ M2 @ ( plus_plus_nat @ ( ord_max_nat @ ( modulo_modulo_nat @ M2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( modulo_modulo_nat @ N3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ ( bit_se1412395901928357646or_nat @ ( divide_divide_nat @ M2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( divide_divide_nat @ N3 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% or_nat_unfold
thf(fact_5099_max__0R,axiom,
    ! [N: nat] :
      ( ( ord_max_nat @ N @ zero_zero_nat )
      = N ) ).

% max_0R
thf(fact_5100_max__0L,axiom,
    ! [N: nat] :
      ( ( ord_max_nat @ zero_zero_nat @ N )
      = N ) ).

% max_0L
thf(fact_5101_max__nat_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( ord_max_nat @ A @ zero_zero_nat )
      = A ) ).

% max_nat.right_neutral
thf(fact_5102_max__nat_Oneutr__eq__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( zero_zero_nat
        = ( ord_max_nat @ A @ B ) )
      = ( ( A = zero_zero_nat )
        & ( B = zero_zero_nat ) ) ) ).

% max_nat.neutr_eq_iff
thf(fact_5103_max__nat_Oleft__neutral,axiom,
    ! [A: nat] :
      ( ( ord_max_nat @ zero_zero_nat @ A )
      = A ) ).

% max_nat.left_neutral
thf(fact_5104_max__nat_Oeq__neutr__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ord_max_nat @ A @ B )
        = zero_zero_nat )
      = ( ( A = zero_zero_nat )
        & ( B = zero_zero_nat ) ) ) ).

% max_nat.eq_neutr_iff
thf(fact_5105_max__Suc__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_max_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( suc @ ( ord_max_nat @ M @ N ) ) ) ).

% max_Suc_Suc
thf(fact_5106_max__numeral__Suc,axiom,
    ! [K: num,N: nat] :
      ( ( ord_max_nat @ ( numeral_numeral_nat @ K ) @ ( suc @ N ) )
      = ( suc @ ( ord_max_nat @ ( pred_numeral @ K ) @ N ) ) ) ).

% max_numeral_Suc
thf(fact_5107_max__Suc__numeral,axiom,
    ! [N: nat,K: num] :
      ( ( ord_max_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ K ) )
      = ( suc @ ( ord_max_nat @ N @ ( pred_numeral @ K ) ) ) ) ).

% max_Suc_numeral
thf(fact_5108_nat__mult__max__right,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( times_times_nat @ M @ ( ord_max_nat @ N @ Q2 ) )
      = ( ord_max_nat @ ( times_times_nat @ M @ N ) @ ( times_times_nat @ M @ Q2 ) ) ) ).

% nat_mult_max_right
thf(fact_5109_nat__mult__max__left,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( times_times_nat @ ( ord_max_nat @ M @ N ) @ Q2 )
      = ( ord_max_nat @ ( times_times_nat @ M @ Q2 ) @ ( times_times_nat @ N @ Q2 ) ) ) ).

% nat_mult_max_left
thf(fact_5110_nat__add__max__left,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( plus_plus_nat @ ( ord_max_nat @ M @ N ) @ Q2 )
      = ( ord_max_nat @ ( plus_plus_nat @ M @ Q2 ) @ ( plus_plus_nat @ N @ Q2 ) ) ) ).

% nat_add_max_left
thf(fact_5111_nat__add__max__right,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( plus_plus_nat @ M @ ( ord_max_nat @ N @ Q2 ) )
      = ( ord_max_nat @ ( plus_plus_nat @ M @ N ) @ ( plus_plus_nat @ M @ Q2 ) ) ) ).

% nat_add_max_right
thf(fact_5112_nat__minus__add__max,axiom,
    ! [N: nat,M: nat] :
      ( ( plus_plus_nat @ ( minus_minus_nat @ N @ M ) @ M )
      = ( ord_max_nat @ N @ M ) ) ).

% nat_minus_add_max
thf(fact_5113_max__Suc1,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_max_nat @ ( suc @ N ) @ M )
      = ( case_nat_nat @ ( suc @ N )
        @ ^ [M7: nat] : ( suc @ ( ord_max_nat @ N @ M7 ) )
        @ M ) ) ).

% max_Suc1
thf(fact_5114_max__Suc2,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_max_nat @ M @ ( suc @ N ) )
      = ( case_nat_nat @ ( suc @ N )
        @ ^ [M7: nat] : ( suc @ ( ord_max_nat @ M7 @ N ) )
        @ M ) ) ).

% max_Suc2
thf(fact_5115_set__encode__inf,axiom,
    ! [A4: set_nat] :
      ( ~ ( finite_finite_nat @ A4 )
     => ( ( nat_set_encode @ A4 )
        = zero_zero_nat ) ) ).

% set_encode_inf
thf(fact_5116_infinite__int__iff__unbounded__le,axiom,
    ! [S3: set_int] :
      ( ( ~ ( finite_finite_int @ S3 ) )
      = ( ! [M2: int] :
          ? [N3: int] :
            ( ( ord_less_eq_int @ M2 @ ( abs_abs_int @ N3 ) )
            & ( member_int @ N3 @ S3 ) ) ) ) ).

% infinite_int_iff_unbounded_le
thf(fact_5117_set__encode__insert,axiom,
    ! [A4: set_nat,N: nat] :
      ( ( finite_finite_nat @ A4 )
     => ( ~ ( member_nat @ N @ A4 )
       => ( ( nat_set_encode @ ( insert_nat @ N @ A4 ) )
          = ( plus_plus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ ( nat_set_encode @ A4 ) ) ) ) ) ).

% set_encode_insert
thf(fact_5118_atMost__Suc,axiom,
    ! [K: nat] :
      ( ( set_ord_atMost_nat @ ( suc @ K ) )
      = ( insert_nat @ ( suc @ K ) @ ( set_ord_atMost_nat @ K ) ) ) ).

% atMost_Suc
thf(fact_5119_atLeast0__atMost__Suc,axiom,
    ! [N: nat] :
      ( ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) )
      = ( insert_nat @ ( suc @ N ) @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ).

% atLeast0_atMost_Suc
thf(fact_5120_atLeast0__lessThan__Suc,axiom,
    ! [N: nat] :
      ( ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) )
      = ( insert_nat @ N @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ).

% atLeast0_lessThan_Suc
thf(fact_5121_Icc__eq__insert__lb__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( set_or1269000886237332187st_nat @ M @ N )
        = ( insert_nat @ M @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ N ) ) ) ) ).

% Icc_eq_insert_lb_nat
thf(fact_5122_atLeastAtMostSuc__conv,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ ( suc @ N ) )
     => ( ( set_or1269000886237332187st_nat @ M @ ( suc @ N ) )
        = ( insert_nat @ ( suc @ N ) @ ( set_or1269000886237332187st_nat @ M @ N ) ) ) ) ).

% atLeastAtMostSuc_conv
thf(fact_5123_atLeastAtMost__insertL,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( insert_nat @ M @ ( set_or1269000886237332187st_nat @ ( suc @ M ) @ N ) )
        = ( set_or1269000886237332187st_nat @ M @ N ) ) ) ).

% atLeastAtMost_insertL
thf(fact_5124_atMost__nat__numeral,axiom,
    ! [K: num] :
      ( ( set_ord_atMost_nat @ ( numeral_numeral_nat @ K ) )
      = ( insert_nat @ ( numeral_numeral_nat @ K ) @ ( set_ord_atMost_nat @ ( pred_numeral @ K ) ) ) ) ).

% atMost_nat_numeral
thf(fact_5125_set__decode__plus__power__2,axiom,
    ! [N: nat,Z2: nat] :
      ( ~ ( member_nat @ N @ ( nat_set_decode @ Z2 ) )
     => ( ( nat_set_decode @ ( plus_plus_nat @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) @ Z2 ) )
        = ( insert_nat @ N @ ( nat_set_decode @ Z2 ) ) ) ) ).

% set_decode_plus_power_2
thf(fact_5126_infinite__nat__iff__unbounded__le,axiom,
    ! [S3: set_nat] :
      ( ( ~ ( finite_finite_nat @ S3 ) )
      = ( ! [M2: nat] :
          ? [N3: nat] :
            ( ( ord_less_eq_nat @ M2 @ N3 )
            & ( member_nat @ N3 @ S3 ) ) ) ) ).

% infinite_nat_iff_unbounded_le
thf(fact_5127_integer__of__num_I3_J,axiom,
    ! [N: num] :
      ( ( code_integer_of_num @ ( bit1 @ N ) )
      = ( plus_p5714425477246183910nteger @ ( plus_p5714425477246183910nteger @ ( code_integer_of_num @ N ) @ ( code_integer_of_num @ N ) ) @ one_one_Code_integer ) ) ).

% integer_of_num(3)
thf(fact_5128_card__Collect__less__nat,axiom,
    ! [N: nat] :
      ( ( finite_card_nat
        @ ( collect_nat
          @ ^ [I2: nat] : ( ord_less_nat @ I2 @ N ) ) )
      = N ) ).

% card_Collect_less_nat
thf(fact_5129_drop__bit__nonnegative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ ( bit_se8568078237143864401it_int @ N @ K ) )
      = ( ord_less_eq_int @ zero_zero_int @ K ) ) ).

% drop_bit_nonnegative_int_iff
thf(fact_5130_drop__bit__negative__int__iff,axiom,
    ! [N: nat,K: int] :
      ( ( ord_less_int @ ( bit_se8568078237143864401it_int @ N @ K ) @ zero_zero_int )
      = ( ord_less_int @ K @ zero_zero_int ) ) ).

% drop_bit_negative_int_iff
thf(fact_5131_drop__bit__minus__one,axiom,
    ! [N: nat] :
      ( ( bit_se8568078237143864401it_int @ N @ ( uminus_uminus_int @ one_one_int ) )
      = ( uminus_uminus_int @ one_one_int ) ) ).

% drop_bit_minus_one
thf(fact_5132_card__atLeastLessThan,axiom,
    ! [L: nat,U: nat] :
      ( ( finite_card_nat @ ( set_or4665077453230672383an_nat @ L @ U ) )
      = ( minus_minus_nat @ U @ L ) ) ).

% card_atLeastLessThan
thf(fact_5133_card__atMost,axiom,
    ! [U: nat] :
      ( ( finite_card_nat @ ( set_ord_atMost_nat @ U ) )
      = ( suc @ U ) ) ).

% card_atMost
thf(fact_5134_card__Collect__le__nat,axiom,
    ! [N: nat] :
      ( ( finite_card_nat
        @ ( collect_nat
          @ ^ [I2: nat] : ( ord_less_eq_nat @ I2 @ N ) ) )
      = ( suc @ N ) ) ).

% card_Collect_le_nat
thf(fact_5135_card__atLeastAtMost,axiom,
    ! [L: nat,U: nat] :
      ( ( finite_card_nat @ ( set_or1269000886237332187st_nat @ L @ U ) )
      = ( minus_minus_nat @ ( suc @ U ) @ L ) ) ).

% card_atLeastAtMost
thf(fact_5136_drop__bit__of__Suc__0,axiom,
    ! [N: nat] :
      ( ( bit_se8570568707652914677it_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( zero_n2687167440665602831ol_nat @ ( N = zero_zero_nat ) ) ) ).

% drop_bit_of_Suc_0
thf(fact_5137_card__atLeastLessThan__int,axiom,
    ! [L: int,U: int] :
      ( ( finite_card_int @ ( set_or4662586982721622107an_int @ L @ U ) )
      = ( nat2 @ ( minus_minus_int @ U @ L ) ) ) ).

% card_atLeastLessThan_int
thf(fact_5138_card__atLeastAtMost__int,axiom,
    ! [L: int,U: int] :
      ( ( finite_card_int @ ( set_or1266510415728281911st_int @ L @ U ) )
      = ( nat2 @ ( plus_plus_int @ ( minus_minus_int @ U @ L ) @ one_one_int ) ) ) ).

% card_atLeastAtMost_int
thf(fact_5139_drop__bit__integer_Oabs__eq,axiom,
    ! [Xa: nat,X2: int] :
      ( ( bit_se3928097537394005634nteger @ Xa @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( bit_se8568078237143864401it_int @ Xa @ X2 ) ) ) ).

% drop_bit_integer.abs_eq
thf(fact_5140_integer__of__num__def,axiom,
    code_integer_of_num = numera6620942414471956472nteger ).

% integer_of_num_def
thf(fact_5141_card__less__Suc2,axiom,
    ! [M3: set_nat,I: nat] :
      ( ~ ( member_nat @ zero_zero_nat @ M3 )
     => ( ( finite_card_nat
          @ ( collect_nat
            @ ^ [K2: nat] :
                ( ( member_nat @ ( suc @ K2 ) @ M3 )
                & ( ord_less_nat @ K2 @ I ) ) ) )
        = ( finite_card_nat
          @ ( collect_nat
            @ ^ [K2: nat] :
                ( ( member_nat @ K2 @ M3 )
                & ( ord_less_nat @ K2 @ ( suc @ I ) ) ) ) ) ) ) ).

% card_less_Suc2
thf(fact_5142_card__less__Suc,axiom,
    ! [M3: set_nat,I: nat] :
      ( ( member_nat @ zero_zero_nat @ M3 )
     => ( ( suc
          @ ( finite_card_nat
            @ ( collect_nat
              @ ^ [K2: nat] :
                  ( ( member_nat @ ( suc @ K2 ) @ M3 )
                  & ( ord_less_nat @ K2 @ I ) ) ) ) )
        = ( finite_card_nat
          @ ( collect_nat
            @ ^ [K2: nat] :
                ( ( member_nat @ K2 @ M3 )
                & ( ord_less_nat @ K2 @ ( suc @ I ) ) ) ) ) ) ) ).

% card_less_Suc
thf(fact_5143_card__less,axiom,
    ! [M3: set_nat,I: nat] :
      ( ( member_nat @ zero_zero_nat @ M3 )
     => ( ( finite_card_nat
          @ ( collect_nat
            @ ^ [K2: nat] :
                ( ( member_nat @ K2 @ M3 )
                & ( ord_less_nat @ K2 @ ( suc @ I ) ) ) ) )
       != zero_zero_nat ) ) ).

% card_less
thf(fact_5144_card__atLeastZeroLessThan__int,axiom,
    ! [U: int] :
      ( ( finite_card_int @ ( set_or4662586982721622107an_int @ zero_zero_int @ U ) )
      = ( nat2 @ U ) ) ).

% card_atLeastZeroLessThan_int
thf(fact_5145_subset__card__intvl__is__intvl,axiom,
    ! [A4: set_nat,K: nat] :
      ( ( ord_less_eq_set_nat @ A4 @ ( set_or4665077453230672383an_nat @ K @ ( plus_plus_nat @ K @ ( finite_card_nat @ A4 ) ) ) )
     => ( A4
        = ( set_or4665077453230672383an_nat @ K @ ( plus_plus_nat @ K @ ( finite_card_nat @ A4 ) ) ) ) ) ).

% subset_card_intvl_is_intvl
thf(fact_5146_atLeastAtMostPlus1__int__conv,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_eq_int @ M @ ( plus_plus_int @ one_one_int @ N ) )
     => ( ( set_or1266510415728281911st_int @ M @ ( plus_plus_int @ one_one_int @ N ) )
        = ( insert_int @ ( plus_plus_int @ one_one_int @ N ) @ ( set_or1266510415728281911st_int @ M @ N ) ) ) ) ).

% atLeastAtMostPlus1_int_conv
thf(fact_5147_subset__eq__atLeast0__lessThan__card,axiom,
    ! [N4: set_nat,N: nat] :
      ( ( ord_less_eq_set_nat @ N4 @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) )
     => ( ord_less_eq_nat @ ( finite_card_nat @ N4 ) @ N ) ) ).

% subset_eq_atLeast0_lessThan_card
thf(fact_5148_card__sum__le__nat__sum,axiom,
    ! [S3: set_nat] :
      ( ord_less_eq_nat
      @ ( groups3542108847815614940at_nat
        @ ^ [X: nat] : X
        @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( finite_card_nat @ S3 ) ) )
      @ ( groups3542108847815614940at_nat
        @ ^ [X: nat] : X
        @ S3 ) ) ).

% card_sum_le_nat_sum
thf(fact_5149_integer__of__num__triv_I1_J,axiom,
    ( ( code_integer_of_num @ one )
    = one_one_Code_integer ) ).

% integer_of_num_triv(1)
thf(fact_5150_integer__of__num_I2_J,axiom,
    ! [N: num] :
      ( ( code_integer_of_num @ ( bit0 @ N ) )
      = ( plus_p5714425477246183910nteger @ ( code_integer_of_num @ N ) @ ( code_integer_of_num @ N ) ) ) ).

% integer_of_num(2)
thf(fact_5151_integer__of__num__triv_I2_J,axiom,
    ( ( code_integer_of_num @ ( bit0 @ one ) )
    = ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ).

% integer_of_num_triv(2)
thf(fact_5152_pred__def,axiom,
    ( pred
    = ( case_nat_nat @ zero_zero_nat
      @ ^ [X24: nat] : X24 ) ) ).

% pred_def
thf(fact_5153_and__int_Osimps,axiom,
    ( bit_se725231765392027082nd_int
    = ( ^ [K2: int,L2: int] :
          ( if_int
          @ ( ( member_int @ K2 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
            & ( member_int @ L2 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
          @ ( uminus_uminus_int
            @ ( zero_n2684676970156552555ol_int
              @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K2 )
                & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L2 ) ) ) )
          @ ( plus_plus_int
            @ ( zero_n2684676970156552555ol_int
              @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K2 )
                & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L2 ) ) )
            @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( divide_divide_int @ K2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ).

% and_int.simps
thf(fact_5154_and__int_Oelims,axiom,
    ! [X2: int,Xa: int,Y: int] :
      ( ( ( bit_se725231765392027082nd_int @ X2 @ Xa )
        = Y )
     => ( ( ( ( member_int @ X2 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
            & ( member_int @ Xa @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
         => ( Y
            = ( uminus_uminus_int
              @ ( zero_n2684676970156552555ol_int
                @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ X2 )
                  & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Xa ) ) ) ) ) )
        & ( ~ ( ( member_int @ X2 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
              & ( member_int @ Xa @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
         => ( Y
            = ( plus_plus_int
              @ ( zero_n2684676970156552555ol_int
                @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ X2 )
                  & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Xa ) ) )
              @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( divide_divide_int @ X2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ Xa @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% and_int.elims
thf(fact_5155_Suc__funpow,axiom,
    ! [N: nat] :
      ( ( compow_nat_nat @ N @ suc )
      = ( plus_plus_nat @ N ) ) ).

% Suc_funpow
thf(fact_5156_atLeastLessThan__upto,axiom,
    ( set_or4662586982721622107an_int
    = ( ^ [I2: int,J3: int] : ( set_int2 @ ( upto @ I2 @ ( minus_minus_int @ J3 @ one_one_int ) ) ) ) ) ).

% atLeastLessThan_upto
thf(fact_5157_simp__from__to,axiom,
    ( set_or1266510415728281911st_int
    = ( ^ [I2: int,J3: int] : ( if_set_int @ ( ord_less_int @ J3 @ I2 ) @ bot_bot_set_int @ ( insert_int @ I2 @ ( set_or1266510415728281911st_int @ ( plus_plus_int @ I2 @ one_one_int ) @ J3 ) ) ) ) ) ).

% simp_from_to
thf(fact_5158_set__decode__zero,axiom,
    ( ( nat_set_decode @ zero_zero_nat )
    = bot_bot_set_nat ) ).

% set_decode_zero
thf(fact_5159_set__encode__empty,axiom,
    ( ( nat_set_encode @ bot_bot_set_nat )
    = zero_zero_nat ) ).

% set_encode_empty
thf(fact_5160_atLeastLessThan__singleton,axiom,
    ! [M: nat] :
      ( ( set_or4665077453230672383an_nat @ M @ ( suc @ M ) )
      = ( insert_nat @ M @ bot_bot_set_nat ) ) ).

% atLeastLessThan_singleton
thf(fact_5161_atMost__0,axiom,
    ( ( set_ord_atMost_nat @ zero_zero_nat )
    = ( insert_nat @ zero_zero_nat @ bot_bot_set_nat ) ) ).

% atMost_0
thf(fact_5162_bot__nat__def,axiom,
    bot_bot_nat = zero_zero_nat ).

% bot_nat_def
thf(fact_5163_atLeastLessThan0,axiom,
    ! [M: nat] :
      ( ( set_or4665077453230672383an_nat @ M @ zero_zero_nat )
      = bot_bot_set_nat ) ).

% atLeastLessThan0
thf(fact_5164_atLeastLessThanSuc,axiom,
    ! [M: nat,N: nat] :
      ( ( ( ord_less_eq_nat @ M @ N )
       => ( ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) )
          = ( insert_nat @ N @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) )
      & ( ~ ( ord_less_eq_nat @ M @ N )
       => ( ( set_or4665077453230672383an_nat @ M @ ( suc @ N ) )
          = bot_bot_set_nat ) ) ) ).

% atLeastLessThanSuc
thf(fact_5165_atLeast1__atMost__eq__remove0,axiom,
    ! [N: nat] :
      ( ( set_or1269000886237332187st_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( minus_minus_set_nat @ ( set_ord_atMost_nat @ N ) @ ( insert_nat @ zero_zero_nat @ bot_bot_set_nat ) ) ) ).

% atLeast1_atMost_eq_remove0
thf(fact_5166_atLeastLessThan__nat__numeral,axiom,
    ! [M: nat,K: num] :
      ( ( ( ord_less_eq_nat @ M @ ( pred_numeral @ K ) )
       => ( ( set_or4665077453230672383an_nat @ M @ ( numeral_numeral_nat @ K ) )
          = ( insert_nat @ ( pred_numeral @ K ) @ ( set_or4665077453230672383an_nat @ M @ ( pred_numeral @ K ) ) ) ) )
      & ( ~ ( ord_less_eq_nat @ M @ ( pred_numeral @ K ) )
       => ( ( set_or4665077453230672383an_nat @ M @ ( numeral_numeral_nat @ K ) )
          = bot_bot_set_nat ) ) ) ).

% atLeastLessThan_nat_numeral
thf(fact_5167_card__greaterThanLessThan__int,axiom,
    ! [L: int,U: int] :
      ( ( finite_card_int @ ( set_or5832277885323065728an_int @ L @ U ) )
      = ( nat2 @ ( minus_minus_int @ U @ ( plus_plus_int @ L @ one_one_int ) ) ) ) ).

% card_greaterThanLessThan_int
thf(fact_5168_finite__greaterThanLessThan__int,axiom,
    ! [L: int,U: int] : ( finite_finite_int @ ( set_or5832277885323065728an_int @ L @ U ) ) ).

% finite_greaterThanLessThan_int
thf(fact_5169_atLeastPlusOneLessThan__greaterThanLessThan__int,axiom,
    ! [L: int,U: int] :
      ( ( set_or4662586982721622107an_int @ ( plus_plus_int @ L @ one_one_int ) @ U )
      = ( set_or5832277885323065728an_int @ L @ U ) ) ).

% atLeastPlusOneLessThan_greaterThanLessThan_int
thf(fact_5170_greaterThanLessThan__upto,axiom,
    ( set_or5832277885323065728an_int
    = ( ^ [I2: int,J3: int] : ( set_int2 @ ( upto @ ( plus_plus_int @ I2 @ one_one_int ) @ ( minus_minus_int @ J3 @ one_one_int ) ) ) ) ) ).

% greaterThanLessThan_upto
thf(fact_5171_max__nat_Osemilattice__neutr__order__axioms,axiom,
    ( semila1623282765462674594er_nat @ ord_max_nat @ zero_zero_nat
    @ ^ [X: nat,Y4: nat] : ( ord_less_eq_nat @ Y4 @ X )
    @ ^ [X: nat,Y4: nat] : ( ord_less_nat @ Y4 @ X ) ) ).

% max_nat.semilattice_neutr_order_axioms
thf(fact_5172_finite__greaterThanLessThan,axiom,
    ! [L: nat,U: nat] : ( finite_finite_nat @ ( set_or5834768355832116004an_nat @ L @ U ) ) ).

% finite_greaterThanLessThan
thf(fact_5173_finite__greaterThanLessThan__integer,axiom,
    ! [L: code_integer,U: code_integer] : ( finite6017078050557962740nteger @ ( set_or4266950643985792945nteger @ L @ U ) ) ).

% finite_greaterThanLessThan_integer
thf(fact_5174_card__greaterThanLessThan,axiom,
    ! [L: nat,U: nat] :
      ( ( finite_card_nat @ ( set_or5834768355832116004an_nat @ L @ U ) )
      = ( minus_minus_nat @ U @ ( suc @ L ) ) ) ).

% card_greaterThanLessThan
thf(fact_5175_atLeastSucLessThan__greaterThanLessThan,axiom,
    ! [L: nat,U: nat] :
      ( ( set_or4665077453230672383an_nat @ ( suc @ L ) @ U )
      = ( set_or5834768355832116004an_nat @ L @ U ) ) ).

% atLeastSucLessThan_greaterThanLessThan
thf(fact_5176_nth__sorted__list__of__set__greaterThanLessThan,axiom,
    ! [N: nat,J: nat,I: nat] :
      ( ( ord_less_nat @ N @ ( minus_minus_nat @ J @ ( suc @ I ) ) )
     => ( ( nth_nat @ ( linord2614967742042102400et_nat @ ( set_or5834768355832116004an_nat @ I @ J ) ) @ N )
        = ( suc @ ( plus_plus_nat @ I @ N ) ) ) ) ).

% nth_sorted_list_of_set_greaterThanLessThan
thf(fact_5177_atLeastPlusOneLessThan__greaterThanLessThan__integer,axiom,
    ! [L: code_integer,U: code_integer] :
      ( ( set_or8404916559141939852nteger @ ( plus_p5714425477246183910nteger @ L @ one_one_Code_integer ) @ U )
      = ( set_or4266950643985792945nteger @ L @ U ) ) ).

% atLeastPlusOneLessThan_greaterThanLessThan_integer
thf(fact_5178_num__of__nat_Osimps_I2_J,axiom,
    ! [N: nat] :
      ( ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( num_of_nat @ ( suc @ N ) )
          = ( inc @ ( num_of_nat @ N ) ) ) )
      & ( ~ ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( num_of_nat @ ( suc @ N ) )
          = one ) ) ) ).

% num_of_nat.simps(2)
thf(fact_5179_num__of__nat__numeral__eq,axiom,
    ! [Q2: num] :
      ( ( num_of_nat @ ( numeral_numeral_nat @ Q2 ) )
      = Q2 ) ).

% num_of_nat_numeral_eq
thf(fact_5180_pred__numeral__simps_I2_J,axiom,
    ! [K: num] :
      ( ( pred_numeral @ ( bit0 @ K ) )
      = ( numeral_numeral_nat @ ( bitM @ K ) ) ) ).

% pred_numeral_simps(2)
thf(fact_5181_inc__BitM__eq,axiom,
    ! [N: num] :
      ( ( inc @ ( bitM @ N ) )
      = ( bit0 @ N ) ) ).

% inc_BitM_eq
thf(fact_5182_BitM__inc__eq,axiom,
    ! [N: num] :
      ( ( bitM @ ( inc @ N ) )
      = ( bit1 @ N ) ) ).

% BitM_inc_eq
thf(fact_5183_num__of__nat_Osimps_I1_J,axiom,
    ( ( num_of_nat @ zero_zero_nat )
    = one ) ).

% num_of_nat.simps(1)
thf(fact_5184_eval__nat__numeral_I2_J,axiom,
    ! [N: num] :
      ( ( numeral_numeral_nat @ ( bit0 @ N ) )
      = ( suc @ ( numeral_numeral_nat @ ( bitM @ N ) ) ) ) ).

% eval_nat_numeral(2)
thf(fact_5185_BitM__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_num @ ( bitM @ N ) @ one )
      = ( bit0 @ N ) ) ).

% BitM_plus_one
thf(fact_5186_one__plus__BitM,axiom,
    ! [N: num] :
      ( ( plus_plus_num @ one @ ( bitM @ N ) )
      = ( bit0 @ N ) ) ).

% one_plus_BitM
thf(fact_5187_numeral__num__of__nat,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( numeral_numeral_nat @ ( num_of_nat @ N ) )
        = N ) ) ).

% numeral_num_of_nat
thf(fact_5188_num__of__nat__One,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ one_one_nat )
     => ( ( num_of_nat @ N )
        = one ) ) ).

% num_of_nat_One
thf(fact_5189_sub__BitM__One__eq,axiom,
    ! [N: num] :
      ( ( neg_numeral_sub_int @ ( bitM @ N ) @ one )
      = ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( neg_numeral_sub_int @ N @ one ) ) ) ).

% sub_BitM_One_eq
thf(fact_5190_num__of__nat__double,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( num_of_nat @ ( plus_plus_nat @ N @ N ) )
        = ( bit0 @ ( num_of_nat @ N ) ) ) ) ).

% num_of_nat_double
thf(fact_5191_num__of__nat__plus__distrib,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ M )
     => ( ( ord_less_nat @ zero_zero_nat @ N )
       => ( ( num_of_nat @ ( plus_plus_nat @ M @ N ) )
          = ( plus_plus_num @ ( num_of_nat @ M ) @ ( num_of_nat @ N ) ) ) ) ) ).

% num_of_nat_plus_distrib
thf(fact_5192_or__minus__numerals_I5_J,axiom,
    ! [N: num] :
      ( ( bit_se1409905431419307370or_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) @ one_one_int )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit_or_not_num_neg @ one @ ( bitM @ N ) ) ) ) ) ).

% or_minus_numerals(5)
thf(fact_5193_or__minus__numerals_I1_J,axiom,
    ! [N: num] :
      ( ( bit_se1409905431419307370or_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit_or_not_num_neg @ one @ ( bitM @ N ) ) ) ) ) ).

% or_minus_numerals(1)
thf(fact_5194_num__of__integer_Oabs__eq,axiom,
    ! [X2: int] :
      ( ( code_num_of_integer @ ( code_integer_of_int @ X2 ) )
      = ( num_of_nat @ ( nat2 @ X2 ) ) ) ).

% num_of_integer.abs_eq
thf(fact_5195_nth__sorted__list__of__set__greaterThanAtMost,axiom,
    ! [N: nat,J: nat,I: nat] :
      ( ( ord_less_nat @ N @ ( minus_minus_nat @ J @ I ) )
     => ( ( nth_nat @ ( linord2614967742042102400et_nat @ ( set_or6659071591806873216st_nat @ I @ J ) ) @ N )
        = ( suc @ ( plus_plus_nat @ I @ N ) ) ) ) ).

% nth_sorted_list_of_set_greaterThanAtMost
thf(fact_5196_take__bit__numeral__minus__numeral__int,axiom,
    ! [M: num,N: num] :
      ( ( bit_se2923211474154528505it_int @ ( numeral_numeral_nat @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( case_option_int_num @ zero_zero_int
        @ ^ [Q6: num] : ( bit_se2923211474154528505it_int @ ( numeral_numeral_nat @ M ) @ ( minus_minus_int @ ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( numeral_numeral_nat @ M ) ) @ ( numeral_numeral_int @ Q6 ) ) )
        @ ( bit_take_bit_num @ ( numeral_numeral_nat @ M ) @ N ) ) ) ).

% take_bit_numeral_minus_numeral_int
thf(fact_5197_finite__greaterThanAtMost,axiom,
    ! [L: nat,U: nat] : ( finite_finite_nat @ ( set_or6659071591806873216st_nat @ L @ U ) ) ).

% finite_greaterThanAtMost
thf(fact_5198_card__greaterThanAtMost,axiom,
    ! [L: nat,U: nat] :
      ( ( finite_card_nat @ ( set_or6659071591806873216st_nat @ L @ U ) )
      = ( minus_minus_nat @ U @ L ) ) ).

% card_greaterThanAtMost
thf(fact_5199_atLeastSucAtMost__greaterThanAtMost,axiom,
    ! [L: nat,U: nat] :
      ( ( set_or1269000886237332187st_nat @ ( suc @ L ) @ U )
      = ( set_or6659071591806873216st_nat @ L @ U ) ) ).

% atLeastSucAtMost_greaterThanAtMost
thf(fact_5200_sorted__list__of__set__greaterThanAtMost,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_eq_nat @ ( suc @ I ) @ J )
     => ( ( linord2614967742042102400et_nat @ ( set_or6659071591806873216st_nat @ I @ J ) )
        = ( cons_nat @ ( suc @ I ) @ ( linord2614967742042102400et_nat @ ( set_or6659071591806873216st_nat @ ( suc @ I ) @ J ) ) ) ) ) ).

% sorted_list_of_set_greaterThanAtMost
thf(fact_5201_and__minus__numerals_I7_J,axiom,
    ! [N: num,M: num] :
      ( ( bit_se725231765392027082nd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) @ ( numeral_numeral_int @ M ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ M @ ( bitM @ N ) ) ) ) ).

% and_minus_numerals(7)
thf(fact_5202_and__minus__numerals_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ N ) ) ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ M @ ( bitM @ N ) ) ) ) ).

% and_minus_numerals(3)
thf(fact_5203_and__minus__numerals_I8_J,axiom,
    ! [N: num,M: num] :
      ( ( bit_se725231765392027082nd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) @ ( numeral_numeral_int @ M ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ M @ ( bit0 @ N ) ) ) ) ).

% and_minus_numerals(8)
thf(fact_5204_and__minus__numerals_I4_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit1 @ N ) ) ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ M @ ( bit0 @ N ) ) ) ) ).

% and_minus_numerals(4)
thf(fact_5205_finite__greaterThanAtMost__int,axiom,
    ! [L: int,U: int] : ( finite_finite_int @ ( set_or6656581121297822940st_int @ L @ U ) ) ).

% finite_greaterThanAtMost_int
thf(fact_5206_finite__greaterThanAtMost__integer,axiom,
    ! [L: code_integer,U: code_integer] : ( finite6017078050557962740nteger @ ( set_or2715278749043346189nteger @ L @ U ) ) ).

% finite_greaterThanAtMost_integer
thf(fact_5207_card__greaterThanAtMost__int,axiom,
    ! [L: int,U: int] :
      ( ( finite_card_int @ ( set_or6656581121297822940st_int @ L @ U ) )
      = ( nat2 @ ( minus_minus_int @ U @ L ) ) ) ).

% card_greaterThanAtMost_int
thf(fact_5208_atLeastPlusOneAtMost__greaterThanAtMost__int,axiom,
    ! [L: int,U: int] :
      ( ( set_or1266510415728281911st_int @ ( plus_plus_int @ L @ one_one_int ) @ U )
      = ( set_or6656581121297822940st_int @ L @ U ) ) ).

% atLeastPlusOneAtMost_greaterThanAtMost_int
thf(fact_5209_atLeastPlusOneAtMost__greaterThanAtMost__integer,axiom,
    ! [L: code_integer,U: code_integer] :
      ( ( set_or189985376899183464nteger @ ( plus_p5714425477246183910nteger @ L @ one_one_Code_integer ) @ U )
      = ( set_or2715278749043346189nteger @ L @ U ) ) ).

% atLeastPlusOneAtMost_greaterThanAtMost_integer
thf(fact_5210_greaterThanAtMost__upto,axiom,
    ( set_or6656581121297822940st_int
    = ( ^ [I2: int,J3: int] : ( set_int2 @ ( upto @ ( plus_plus_int @ I2 @ one_one_int ) @ J3 ) ) ) ) ).

% greaterThanAtMost_upto
thf(fact_5211_int__numeral__not__and__num,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ N @ M ) ) ) ).

% int_numeral_not_and_num
thf(fact_5212_int__numeral__and__not__num,axiom,
    ! [M: num,N: num] :
      ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) )
      = ( case_option_int_num @ zero_zero_int @ numeral_numeral_int @ ( bit_and_not_num @ M @ N ) ) ) ).

% int_numeral_and_not_num
thf(fact_5213_nat__of__integer__less__iff,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ X2 )
     => ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ Y )
       => ( ( ord_less_nat @ ( code_nat_of_integer @ X2 ) @ ( code_nat_of_integer @ Y ) )
          = ( ord_le6747313008572928689nteger @ X2 @ Y ) ) ) ) ).

% nat_of_integer_less_iff
thf(fact_5214_nat__of__integer__of__nat,axiom,
    ! [N: nat] :
      ( ( code_nat_of_integer @ ( semiri4939895301339042750nteger @ N ) )
      = N ) ).

% nat_of_integer_of_nat
thf(fact_5215_of__nat__of__integer,axiom,
    ! [K: code_integer] :
      ( ( semiri4939895301339042750nteger @ ( code_nat_of_integer @ K ) )
      = ( ord_max_Code_integer @ zero_z3403309356797280102nteger @ K ) ) ).

% of_nat_of_integer
thf(fact_5216_nat__of__integer__non__positive,axiom,
    ! [K: code_integer] :
      ( ( ord_le3102999989581377725nteger @ K @ zero_z3403309356797280102nteger )
     => ( ( code_nat_of_integer @ K )
        = zero_zero_nat ) ) ).

% nat_of_integer_non_positive
thf(fact_5217_nat__of__integer_Oabs__eq,axiom,
    ! [X2: int] :
      ( ( code_nat_of_integer @ ( code_integer_of_int @ X2 ) )
      = ( nat2 @ X2 ) ) ).

% nat_of_integer.abs_eq
thf(fact_5218_upto__rec2,axiom,
    ! [I: int,J: int] :
      ( ( ord_less_eq_int @ I @ J )
     => ( ( upto @ I @ J )
        = ( append_int @ ( upto @ I @ ( minus_minus_int @ J @ one_one_int ) ) @ ( cons_int @ J @ nil_int ) ) ) ) ).

% upto_rec2
thf(fact_5219_upto__split2,axiom,
    ! [I: int,J: int,K: int] :
      ( ( ord_less_eq_int @ I @ J )
     => ( ( ord_less_eq_int @ J @ K )
       => ( ( upto @ I @ K )
          = ( append_int @ ( upto @ I @ J ) @ ( upto @ ( plus_plus_int @ J @ one_one_int ) @ K ) ) ) ) ) ).

% upto_split2
thf(fact_5220_upto__split1,axiom,
    ! [I: int,J: int,K: int] :
      ( ( ord_less_eq_int @ I @ J )
     => ( ( ord_less_eq_int @ J @ K )
       => ( ( upto @ I @ K )
          = ( append_int @ ( upto @ I @ ( minus_minus_int @ J @ one_one_int ) ) @ ( upto @ J @ K ) ) ) ) ) ).

% upto_split1
thf(fact_5221_upto__split3,axiom,
    ! [I: int,J: int,K: int] :
      ( ( ord_less_eq_int @ I @ J )
     => ( ( ord_less_eq_int @ J @ K )
       => ( ( upto @ I @ K )
          = ( append_int @ ( upto @ I @ ( minus_minus_int @ J @ one_one_int ) ) @ ( cons_int @ J @ ( upto @ ( plus_plus_int @ J @ one_one_int ) @ K ) ) ) ) ) ) ).

% upto_split3
thf(fact_5222_Gcd__remove0__nat,axiom,
    ! [M3: set_nat] :
      ( ( finite_finite_nat @ M3 )
     => ( ( gcd_Gcd_nat @ M3 )
        = ( gcd_Gcd_nat @ ( minus_minus_set_nat @ M3 @ ( insert_nat @ zero_zero_nat @ bot_bot_set_nat ) ) ) ) ) ).

% Gcd_remove0_nat
thf(fact_5223_Gcd__nat__eq__one,axiom,
    ! [N4: set_nat] :
      ( ( member_nat @ one_one_nat @ N4 )
     => ( ( gcd_Gcd_nat @ N4 )
        = one_one_nat ) ) ).

% Gcd_nat_eq_one
thf(fact_5224_Gcd__dvd__nat,axiom,
    ! [A: nat,A4: set_nat] :
      ( ( member_nat @ A @ A4 )
     => ( dvd_dvd_nat @ ( gcd_Gcd_nat @ A4 ) @ A ) ) ).

% Gcd_dvd_nat
thf(fact_5225_Gcd__greatest__nat,axiom,
    ! [A4: set_nat,A: nat] :
      ( ! [B3: nat] :
          ( ( member_nat @ B3 @ A4 )
         => ( dvd_dvd_nat @ A @ B3 ) )
     => ( dvd_dvd_nat @ A @ ( gcd_Gcd_nat @ A4 ) ) ) ).

% Gcd_greatest_nat
thf(fact_5226_abs__Gcd__eq,axiom,
    ! [K5: set_int] :
      ( ( abs_abs_int @ ( gcd_Gcd_int @ K5 ) )
      = ( gcd_Gcd_int @ K5 ) ) ).

% abs_Gcd_eq
thf(fact_5227_finite__lessThan,axiom,
    ! [K: nat] : ( finite_finite_nat @ ( set_ord_lessThan_nat @ K ) ) ).

% finite_lessThan
thf(fact_5228_card__lessThan,axiom,
    ! [U: nat] :
      ( ( finite_card_nat @ ( set_ord_lessThan_nat @ U ) )
      = U ) ).

% card_lessThan
thf(fact_5229_lessThan__0,axiom,
    ( ( set_ord_lessThan_nat @ zero_zero_nat )
    = bot_bot_set_nat ) ).

% lessThan_0
thf(fact_5230_Gcd__dvd__int,axiom,
    ! [A: int,A4: set_int] :
      ( ( member_int @ A @ A4 )
     => ( dvd_dvd_int @ ( gcd_Gcd_int @ A4 ) @ A ) ) ).

% Gcd_dvd_int
thf(fact_5231_Gcd__greatest__int,axiom,
    ! [A4: set_int,A: int] :
      ( ! [B3: int] :
          ( ( member_int @ B3 @ A4 )
         => ( dvd_dvd_int @ A @ B3 ) )
     => ( dvd_dvd_int @ A @ ( gcd_Gcd_int @ A4 ) ) ) ).

% Gcd_greatest_int
thf(fact_5232_lessThan__atLeast0,axiom,
    ( set_ord_lessThan_nat
    = ( set_or4665077453230672383an_nat @ zero_zero_nat ) ) ).

% lessThan_atLeast0
thf(fact_5233_lessThan__Suc__atMost,axiom,
    ! [K: nat] :
      ( ( set_ord_lessThan_nat @ ( suc @ K ) )
      = ( set_ord_atMost_nat @ K ) ) ).

% lessThan_Suc_atMost
thf(fact_5234_lessThan__empty__iff,axiom,
    ! [N: nat] :
      ( ( ( set_ord_lessThan_nat @ N )
        = bot_bot_set_nat )
      = ( N = zero_zero_nat ) ) ).

% lessThan_empty_iff
thf(fact_5235_lessThan__Suc,axiom,
    ! [K: nat] :
      ( ( set_ord_lessThan_nat @ ( suc @ K ) )
      = ( insert_nat @ K @ ( set_ord_lessThan_nat @ K ) ) ) ).

% lessThan_Suc
thf(fact_5236_Gcd__int__greater__eq__0,axiom,
    ! [K5: set_int] : ( ord_less_eq_int @ zero_zero_int @ ( gcd_Gcd_int @ K5 ) ) ).

% Gcd_int_greater_eq_0
thf(fact_5237_lessThan__nat__numeral,axiom,
    ! [K: num] :
      ( ( set_ord_lessThan_nat @ ( numeral_numeral_nat @ K ) )
      = ( insert_nat @ ( pred_numeral @ K ) @ ( set_ord_lessThan_nat @ ( pred_numeral @ K ) ) ) ) ).

% lessThan_nat_numeral
thf(fact_5238_atLeast1__lessThan__eq__remove0,axiom,
    ! [N: nat] :
      ( ( set_or4665077453230672383an_nat @ ( suc @ zero_zero_nat ) @ N )
      = ( minus_minus_set_nat @ ( set_ord_lessThan_nat @ N ) @ ( insert_nat @ zero_zero_nat @ bot_bot_set_nat ) ) ) ).

% atLeast1_lessThan_eq_remove0
thf(fact_5239_image__atLeastZeroLessThan__integer,axiom,
    ! [U: code_integer] :
      ( ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ U )
     => ( ( set_or8404916559141939852nteger @ zero_z3403309356797280102nteger @ U )
        = ( image_1215581382706833972nteger @ semiri4939895301339042750nteger @ ( set_ord_lessThan_nat @ ( code_nat_of_integer @ U ) ) ) ) ) ).

% image_atLeastZeroLessThan_integer
thf(fact_5240_take__bit__num__simps_I7_J,axiom,
    ! [R: num,M: num] :
      ( ( bit_take_bit_num @ ( numeral_numeral_nat @ R ) @ ( bit1 @ M ) )
      = ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_take_bit_num @ ( pred_numeral @ R ) @ M ) ) ) ) ).

% take_bit_num_simps(7)
thf(fact_5241_take__bit__num__simps_I4_J,axiom,
    ! [N: nat,M: num] :
      ( ( bit_take_bit_num @ ( suc @ N ) @ ( bit1 @ M ) )
      = ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_take_bit_num @ N @ M ) ) ) ) ).

% take_bit_num_simps(4)
thf(fact_5242_and__not__num_Osimps_I8_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_and_not_num @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( case_o6005452278849405969um_num @ ( some_num @ one )
        @ ^ [N9: num] : ( some_num @ ( bit1 @ N9 ) )
        @ ( bit_and_not_num @ M @ N ) ) ) ).

% and_not_num.simps(8)
thf(fact_5243_image__Suc__atLeastAtMost,axiom,
    ! [I: nat,J: nat] :
      ( ( image_nat_nat @ suc @ ( set_or1269000886237332187st_nat @ I @ J ) )
      = ( set_or1269000886237332187st_nat @ ( suc @ I ) @ ( suc @ J ) ) ) ).

% image_Suc_atLeastAtMost
thf(fact_5244_image__Suc__atLeastLessThan,axiom,
    ! [I: nat,J: nat] :
      ( ( image_nat_nat @ suc @ ( set_or4665077453230672383an_nat @ I @ J ) )
      = ( set_or4665077453230672383an_nat @ ( suc @ I ) @ ( suc @ J ) ) ) ).

% image_Suc_atLeastLessThan
thf(fact_5245_Gcd__abs__eq,axiom,
    ! [K5: set_int] :
      ( ( gcd_Gcd_int @ ( image_int_int @ abs_abs_int @ K5 ) )
      = ( gcd_Gcd_int @ K5 ) ) ).

% Gcd_abs_eq
thf(fact_5246_Gcd__int__eq,axiom,
    ! [N4: set_nat] :
      ( ( gcd_Gcd_int @ ( image_nat_int @ semiri1314217659103216013at_int @ N4 ) )
      = ( semiri1314217659103216013at_int @ ( gcd_Gcd_nat @ N4 ) ) ) ).

% Gcd_int_eq
thf(fact_5247_Gcd__nat__abs__eq,axiom,
    ! [K5: set_int] :
      ( ( gcd_Gcd_nat
        @ ( image_int_nat
          @ ^ [K2: int] : ( nat2 @ ( abs_abs_int @ K2 ) )
          @ K5 ) )
      = ( nat2 @ ( gcd_Gcd_int @ K5 ) ) ) ).

% Gcd_nat_abs_eq
thf(fact_5248_zero__notin__Suc__image,axiom,
    ! [A4: set_nat] :
      ~ ( member_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ A4 ) ) ).

% zero_notin_Suc_image
thf(fact_5249_image__int__atLeastAtMost,axiom,
    ! [A: nat,B: nat] :
      ( ( image_nat_int @ semiri1314217659103216013at_int @ ( set_or1269000886237332187st_nat @ A @ B ) )
      = ( set_or1266510415728281911st_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) ).

% image_int_atLeastAtMost
thf(fact_5250_image__int__atLeastLessThan,axiom,
    ! [A: nat,B: nat] :
      ( ( image_nat_int @ semiri1314217659103216013at_int @ ( set_or4665077453230672383an_nat @ A @ B ) )
      = ( set_or4662586982721622107an_int @ ( semiri1314217659103216013at_int @ A ) @ ( semiri1314217659103216013at_int @ B ) ) ) ).

% image_int_atLeastLessThan
thf(fact_5251_image__Suc__atMost,axiom,
    ! [N: nat] :
      ( ( image_nat_nat @ suc @ ( set_ord_atMost_nat @ N ) )
      = ( set_or1269000886237332187st_nat @ one_one_nat @ ( suc @ N ) ) ) ).

% image_Suc_atMost
thf(fact_5252_image__Suc__lessThan,axiom,
    ! [N: nat] :
      ( ( image_nat_nat @ suc @ ( set_ord_lessThan_nat @ N ) )
      = ( set_or1269000886237332187st_nat @ one_one_nat @ N ) ) ).

% image_Suc_lessThan
thf(fact_5253_atLeast0__atMost__Suc__eq__insert__0,axiom,
    ! [N: nat] :
      ( ( set_or1269000886237332187st_nat @ zero_zero_nat @ ( suc @ N ) )
      = ( insert_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ ( set_or1269000886237332187st_nat @ zero_zero_nat @ N ) ) ) ) ).

% atLeast0_atMost_Suc_eq_insert_0
thf(fact_5254_atLeast0__lessThan__Suc__eq__insert__0,axiom,
    ! [N: nat] :
      ( ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( suc @ N ) )
      = ( insert_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ) ).

% atLeast0_lessThan_Suc_eq_insert_0
thf(fact_5255_atMost__Suc__eq__insert__0,axiom,
    ! [N: nat] :
      ( ( set_ord_atMost_nat @ ( suc @ N ) )
      = ( insert_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ ( set_ord_atMost_nat @ N ) ) ) ) ).

% atMost_Suc_eq_insert_0
thf(fact_5256_lessThan__Suc__eq__insert__0,axiom,
    ! [N: nat] :
      ( ( set_ord_lessThan_nat @ ( suc @ N ) )
      = ( insert_nat @ zero_zero_nat @ ( image_nat_nat @ suc @ ( set_ord_lessThan_nat @ N ) ) ) ) ).

% lessThan_Suc_eq_insert_0
thf(fact_5257_image__add__int__atLeastLessThan,axiom,
    ! [L: int,U: int] :
      ( ( image_int_int
        @ ^ [X: int] : ( plus_plus_int @ X @ L )
        @ ( set_or4662586982721622107an_int @ zero_zero_int @ ( minus_minus_int @ U @ L ) ) )
      = ( set_or4662586982721622107an_int @ L @ U ) ) ).

% image_add_int_atLeastLessThan
thf(fact_5258_image__add__integer__atLeastLessThan,axiom,
    ! [L: code_integer,U: code_integer] :
      ( ( image_4470545334726330049nteger
        @ ^ [X: code_integer] : ( plus_p5714425477246183910nteger @ X @ L )
        @ ( set_or8404916559141939852nteger @ zero_z3403309356797280102nteger @ ( minus_8373710615458151222nteger @ U @ L ) ) )
      = ( set_or8404916559141939852nteger @ L @ U ) ) ).

% image_add_integer_atLeastLessThan
thf(fact_5259_image__atLeastZeroLessThan__int,axiom,
    ! [U: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ U )
     => ( ( set_or4662586982721622107an_int @ zero_zero_int @ U )
        = ( image_nat_int @ semiri1314217659103216013at_int @ ( set_ord_lessThan_nat @ ( nat2 @ U ) ) ) ) ) ).

% image_atLeastZeroLessThan_int
thf(fact_5260_image__minus__const__atLeastLessThan__nat,axiom,
    ! [C: nat,Y: nat,X2: nat] :
      ( ( ( ord_less_nat @ C @ Y )
       => ( ( image_nat_nat
            @ ^ [I2: nat] : ( minus_minus_nat @ I2 @ C )
            @ ( set_or4665077453230672383an_nat @ X2 @ Y ) )
          = ( set_or4665077453230672383an_nat @ ( minus_minus_nat @ X2 @ C ) @ ( minus_minus_nat @ Y @ C ) ) ) )
      & ( ~ ( ord_less_nat @ C @ Y )
       => ( ( ( ord_less_nat @ X2 @ Y )
           => ( ( image_nat_nat
                @ ^ [I2: nat] : ( minus_minus_nat @ I2 @ C )
                @ ( set_or4665077453230672383an_nat @ X2 @ Y ) )
              = ( insert_nat @ zero_zero_nat @ bot_bot_set_nat ) ) )
          & ( ~ ( ord_less_nat @ X2 @ Y )
           => ( ( image_nat_nat
                @ ^ [I2: nat] : ( minus_minus_nat @ I2 @ C )
                @ ( set_or4665077453230672383an_nat @ X2 @ Y ) )
              = bot_bot_set_nat ) ) ) ) ) ).

% image_minus_const_atLeastLessThan_nat
thf(fact_5261_take__bit__num__simps_I6_J,axiom,
    ! [R: num,M: num] :
      ( ( bit_take_bit_num @ ( numeral_numeral_nat @ R ) @ ( bit0 @ M ) )
      = ( case_o6005452278849405969um_num @ none_num
        @ ^ [Q6: num] : ( some_num @ ( bit0 @ Q6 ) )
        @ ( bit_take_bit_num @ ( pred_numeral @ R ) @ M ) ) ) ).

% take_bit_num_simps(6)
thf(fact_5262_take__bit__num__simps_I1_J,axiom,
    ! [M: num] :
      ( ( bit_take_bit_num @ zero_zero_nat @ M )
      = none_num ) ).

% take_bit_num_simps(1)
thf(fact_5263_take__bit__num__simps_I3_J,axiom,
    ! [N: nat,M: num] :
      ( ( bit_take_bit_num @ ( suc @ N ) @ ( bit0 @ M ) )
      = ( case_o6005452278849405969um_num @ none_num
        @ ^ [Q6: num] : ( some_num @ ( bit0 @ Q6 ) )
        @ ( bit_take_bit_num @ N @ M ) ) ) ).

% take_bit_num_simps(3)
thf(fact_5264_and__not__num__eq__None__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( bit_and_not_num @ M @ N )
        = none_num )
      = ( ( bit_se725231765392027082nd_int @ ( numeral_numeral_int @ M ) @ ( bit_ri7919022796975470100ot_int @ ( numeral_numeral_int @ N ) ) )
        = zero_zero_int ) ) ).

% and_not_num_eq_None_iff
thf(fact_5265_take__bit__num__def,axiom,
    ( bit_take_bit_num
    = ( ^ [N3: nat,M2: num] :
          ( if_option_num
          @ ( ( bit_se2925701944663578781it_nat @ N3 @ ( numeral_numeral_nat @ M2 ) )
            = zero_zero_nat )
          @ none_num
          @ ( some_num @ ( num_of_nat @ ( bit_se2925701944663578781it_nat @ N3 @ ( numeral_numeral_nat @ M2 ) ) ) ) ) ) ) ).

% take_bit_num_def
thf(fact_5266_and__not__num_Oelims,axiom,
    ! [X2: num,Xa: num,Y: option_num] :
      ( ( ( bit_and_not_num @ X2 @ Xa )
        = Y )
     => ( ( ( X2 = one )
         => ( ( Xa = one )
           => ( Y != none_num ) ) )
       => ( ( ( X2 = one )
           => ( ? [N2: num] :
                  ( Xa
                  = ( bit0 @ N2 ) )
             => ( Y
               != ( some_num @ one ) ) ) )
         => ( ( ( X2 = one )
             => ( ? [N2: num] :
                    ( Xa
                    = ( bit1 @ N2 ) )
               => ( Y != none_num ) ) )
           => ( ! [M4: num] :
                  ( ( X2
                    = ( bit0 @ M4 ) )
                 => ( ( Xa = one )
                   => ( Y
                     != ( some_num @ ( bit0 @ M4 ) ) ) ) )
             => ( ! [M4: num] :
                    ( ( X2
                      = ( bit0 @ M4 ) )
                   => ! [N2: num] :
                        ( ( Xa
                          = ( bit0 @ N2 ) )
                       => ( Y
                         != ( map_option_num_num @ bit0 @ ( bit_and_not_num @ M4 @ N2 ) ) ) ) )
               => ( ! [M4: num] :
                      ( ( X2
                        = ( bit0 @ M4 ) )
                     => ! [N2: num] :
                          ( ( Xa
                            = ( bit1 @ N2 ) )
                         => ( Y
                           != ( map_option_num_num @ bit0 @ ( bit_and_not_num @ M4 @ N2 ) ) ) ) )
                 => ( ! [M4: num] :
                        ( ( X2
                          = ( bit1 @ M4 ) )
                       => ( ( Xa = one )
                         => ( Y
                           != ( some_num @ ( bit0 @ M4 ) ) ) ) )
                   => ( ! [M4: num] :
                          ( ( X2
                            = ( bit1 @ M4 ) )
                         => ! [N2: num] :
                              ( ( Xa
                                = ( bit0 @ N2 ) )
                             => ( Y
                               != ( case_o6005452278849405969um_num @ ( some_num @ one )
                                  @ ^ [N9: num] : ( some_num @ ( bit1 @ N9 ) )
                                  @ ( bit_and_not_num @ M4 @ N2 ) ) ) ) )
                     => ~ ! [M4: num] :
                            ( ( X2
                              = ( bit1 @ M4 ) )
                           => ! [N2: num] :
                                ( ( Xa
                                  = ( bit1 @ N2 ) )
                               => ( Y
                                 != ( map_option_num_num @ bit0 @ ( bit_and_not_num @ M4 @ N2 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% and_not_num.elims
thf(fact_5267_Gcd__int__def,axiom,
    ( gcd_Gcd_int
    = ( ^ [K6: set_int] : ( semiri1314217659103216013at_int @ ( gcd_Gcd_nat @ ( image_int_nat @ ( comp_int_nat_int @ nat2 @ abs_abs_int ) @ K6 ) ) ) ) ) ).

% Gcd_int_def
thf(fact_5268_and__num_Oelims,axiom,
    ! [X2: num,Xa: num,Y: option_num] :
      ( ( ( bit_un7362597486090784418nd_num @ X2 @ Xa )
        = Y )
     => ( ( ( X2 = one )
         => ( ( Xa = one )
           => ( Y
             != ( some_num @ one ) ) ) )
       => ( ( ( X2 = one )
           => ( ? [N2: num] :
                  ( Xa
                  = ( bit0 @ N2 ) )
             => ( Y != none_num ) ) )
         => ( ( ( X2 = one )
             => ( ? [N2: num] :
                    ( Xa
                    = ( bit1 @ N2 ) )
               => ( Y
                 != ( some_num @ one ) ) ) )
           => ( ( ? [M4: num] :
                    ( X2
                    = ( bit0 @ M4 ) )
               => ( ( Xa = one )
                 => ( Y != none_num ) ) )
             => ( ! [M4: num] :
                    ( ( X2
                      = ( bit0 @ M4 ) )
                   => ! [N2: num] :
                        ( ( Xa
                          = ( bit0 @ N2 ) )
                       => ( Y
                         != ( map_option_num_num @ bit0 @ ( bit_un7362597486090784418nd_num @ M4 @ N2 ) ) ) ) )
               => ( ! [M4: num] :
                      ( ( X2
                        = ( bit0 @ M4 ) )
                     => ! [N2: num] :
                          ( ( Xa
                            = ( bit1 @ N2 ) )
                         => ( Y
                           != ( map_option_num_num @ bit0 @ ( bit_un7362597486090784418nd_num @ M4 @ N2 ) ) ) ) )
                 => ( ( ? [M4: num] :
                          ( X2
                          = ( bit1 @ M4 ) )
                     => ( ( Xa = one )
                       => ( Y
                         != ( some_num @ one ) ) ) )
                   => ( ! [M4: num] :
                          ( ( X2
                            = ( bit1 @ M4 ) )
                         => ! [N2: num] :
                              ( ( Xa
                                = ( bit0 @ N2 ) )
                             => ( Y
                               != ( map_option_num_num @ bit0 @ ( bit_un7362597486090784418nd_num @ M4 @ N2 ) ) ) ) )
                     => ~ ! [M4: num] :
                            ( ( X2
                              = ( bit1 @ M4 ) )
                           => ! [N2: num] :
                                ( ( Xa
                                  = ( bit1 @ N2 ) )
                               => ( Y
                                 != ( case_o6005452278849405969um_num @ ( some_num @ one )
                                    @ ^ [N9: num] : ( some_num @ ( bit1 @ N9 ) )
                                    @ ( bit_un7362597486090784418nd_num @ M4 @ N2 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% and_num.elims
thf(fact_5269_and__num_Osimps_I9_J,axiom,
    ! [M: num,N: num] :
      ( ( bit_un7362597486090784418nd_num @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( case_o6005452278849405969um_num @ ( some_num @ one )
        @ ^ [N9: num] : ( some_num @ ( bit1 @ N9 ) )
        @ ( bit_un7362597486090784418nd_num @ M @ N ) ) ) ).

% and_num.simps(9)
thf(fact_5270_Code__Numeral_Onegative__def,axiom,
    ( code_negative
    = ( comp_C3531382070062128313er_num @ uminus1351360451143612070nteger @ numera6620942414471956472nteger ) ) ).

% Code_Numeral.negative_def
thf(fact_5271_measure__function__int,axiom,
    fun_is_measure_int @ ( comp_int_nat_int @ nat2 @ abs_abs_int ) ).

% measure_function_int
thf(fact_5272_nat__of__integer__code,axiom,
    ( code_nat_of_integer
    = ( ^ [K2: code_integer] :
          ( if_nat @ ( ord_le3102999989581377725nteger @ K2 @ zero_z3403309356797280102nteger ) @ zero_zero_nat
          @ ( produc1555791787009142072er_nat
            @ ^ [L2: code_integer,J3: code_integer] : ( if_nat @ ( J3 = zero_z3403309356797280102nteger ) @ ( plus_plus_nat @ ( code_nat_of_integer @ L2 ) @ ( code_nat_of_integer @ L2 ) ) @ ( plus_plus_nat @ ( plus_plus_nat @ ( code_nat_of_integer @ L2 ) @ ( code_nat_of_integer @ L2 ) ) @ one_one_nat ) )
            @ ( code_divmod_integer @ K2 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ).

% nat_of_integer_code
thf(fact_5273_num__of__integer__code,axiom,
    ( code_num_of_integer
    = ( ^ [K2: code_integer] :
          ( if_num @ ( ord_le3102999989581377725nteger @ K2 @ one_one_Code_integer ) @ one
          @ ( produc7336495610019696514er_num
            @ ^ [L2: code_integer,J3: code_integer] : ( if_num @ ( J3 = zero_z3403309356797280102nteger ) @ ( plus_plus_num @ ( code_num_of_integer @ L2 ) @ ( code_num_of_integer @ L2 ) ) @ ( plus_plus_num @ ( plus_plus_num @ ( code_num_of_integer @ L2 ) @ ( code_num_of_integer @ L2 ) ) @ one ) )
            @ ( code_divmod_integer @ K2 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ).

% num_of_integer_code
thf(fact_5274_int__of__integer__code,axiom,
    ( code_int_of_integer
    = ( ^ [K2: code_integer] :
          ( if_int @ ( ord_le6747313008572928689nteger @ K2 @ zero_z3403309356797280102nteger ) @ ( uminus_uminus_int @ ( code_int_of_integer @ ( uminus1351360451143612070nteger @ K2 ) ) )
          @ ( if_int @ ( K2 = zero_z3403309356797280102nteger ) @ zero_zero_int
            @ ( produc1553301316500091796er_int
              @ ^ [L2: code_integer,J3: code_integer] : ( if_int @ ( J3 = zero_z3403309356797280102nteger ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( code_int_of_integer @ L2 ) ) @ ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( code_int_of_integer @ L2 ) ) @ one_one_int ) )
              @ ( code_divmod_integer @ K2 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ) ).

% int_of_integer_code
thf(fact_5275_int__of__integer__inverse,axiom,
    ! [X2: code_integer] :
      ( ( code_integer_of_int @ ( code_int_of_integer @ X2 ) )
      = X2 ) ).

% int_of_integer_inverse
thf(fact_5276_int__of__integer__integer__of__int,axiom,
    ! [K: int] :
      ( ( code_int_of_integer @ ( code_integer_of_int @ K ) )
      = K ) ).

% int_of_integer_integer_of_int
thf(fact_5277_integer__of__int__int__of__integer,axiom,
    ! [K: code_integer] :
      ( ( code_integer_of_int @ ( code_int_of_integer @ K ) )
      = K ) ).

% integer_of_int_int_of_integer
thf(fact_5278_int__of__integer__sub,axiom,
    ! [K: num,L: num] :
      ( ( code_int_of_integer @ ( neg_nu5755505904847501662nteger @ K @ L ) )
      = ( neg_numeral_sub_int @ K @ L ) ) ).

% int_of_integer_sub
thf(fact_5279_of__int__integer__of,axiom,
    ! [K: code_integer] :
      ( ( ring_18347121197199848620nteger @ ( code_int_of_integer @ K ) )
      = K ) ).

% of_int_integer_of
thf(fact_5280_int__of__integer__of__int,axiom,
    ! [K: int] :
      ( ( code_int_of_integer @ ( ring_18347121197199848620nteger @ K ) )
      = K ) ).

% int_of_integer_of_int
thf(fact_5281_zero__integer_Orep__eq,axiom,
    ( ( code_int_of_integer @ zero_z3403309356797280102nteger )
    = zero_zero_int ) ).

% zero_integer.rep_eq
thf(fact_5282_int__of__integer__numeral,axiom,
    ! [K: num] :
      ( ( code_int_of_integer @ ( numera6620942414471956472nteger @ K ) )
      = ( numeral_numeral_int @ K ) ) ).

% int_of_integer_numeral
thf(fact_5283_plus__integer_Orep__eq,axiom,
    ! [X2: code_integer,Xa: code_integer] :
      ( ( code_int_of_integer @ ( plus_p5714425477246183910nteger @ X2 @ Xa ) )
      = ( plus_plus_int @ ( code_int_of_integer @ X2 ) @ ( code_int_of_integer @ Xa ) ) ) ).

% plus_integer.rep_eq
thf(fact_5284_one__integer_Orep__eq,axiom,
    ( ( code_int_of_integer @ one_one_Code_integer )
    = one_one_int ) ).

% one_integer.rep_eq
thf(fact_5285_uminus__integer_Orep__eq,axiom,
    ! [X2: code_integer] :
      ( ( code_int_of_integer @ ( uminus1351360451143612070nteger @ X2 ) )
      = ( uminus_uminus_int @ ( code_int_of_integer @ X2 ) ) ) ).

% uminus_integer.rep_eq
thf(fact_5286_times__integer_Orep__eq,axiom,
    ! [X2: code_integer,Xa: code_integer] :
      ( ( code_int_of_integer @ ( times_3573771949741848930nteger @ X2 @ Xa ) )
      = ( times_times_int @ ( code_int_of_integer @ X2 ) @ ( code_int_of_integer @ Xa ) ) ) ).

% times_integer.rep_eq
thf(fact_5287_minus__integer_Orep__eq,axiom,
    ! [X2: code_integer,Xa: code_integer] :
      ( ( code_int_of_integer @ ( minus_8373710615458151222nteger @ X2 @ Xa ) )
      = ( minus_minus_int @ ( code_int_of_integer @ X2 ) @ ( code_int_of_integer @ Xa ) ) ) ).

% minus_integer.rep_eq
thf(fact_5288_abs__integer_Orep__eq,axiom,
    ! [X2: code_integer] :
      ( ( code_int_of_integer @ ( abs_abs_Code_integer @ X2 ) )
      = ( abs_abs_int @ ( code_int_of_integer @ X2 ) ) ) ).

% abs_integer.rep_eq
thf(fact_5289_divide__integer_Orep__eq,axiom,
    ! [X2: code_integer,Xa: code_integer] :
      ( ( code_int_of_integer @ ( divide6298287555418463151nteger @ X2 @ Xa ) )
      = ( divide_divide_int @ ( code_int_of_integer @ X2 ) @ ( code_int_of_integer @ Xa ) ) ) ).

% divide_integer.rep_eq
thf(fact_5290_modulo__integer_Orep__eq,axiom,
    ! [X2: code_integer,Xa: code_integer] :
      ( ( code_int_of_integer @ ( modulo364778990260209775nteger @ X2 @ Xa ) )
      = ( modulo_modulo_int @ ( code_int_of_integer @ X2 ) @ ( code_int_of_integer @ Xa ) ) ) ).

% modulo_integer.rep_eq
thf(fact_5291_int__of__integer__of__nat,axiom,
    ! [N: nat] :
      ( ( code_int_of_integer @ ( semiri4939895301339042750nteger @ N ) )
      = ( semiri1314217659103216013at_int @ N ) ) ).

% int_of_integer_of_nat
thf(fact_5292_sgn__integer_Orep__eq,axiom,
    ! [X2: code_integer] :
      ( ( code_int_of_integer @ ( sgn_sgn_Code_integer @ X2 ) )
      = ( sgn_sgn_int @ ( code_int_of_integer @ X2 ) ) ) ).

% sgn_integer.rep_eq
thf(fact_5293_int__of__integer__max,axiom,
    ! [K: code_integer,L: code_integer] :
      ( ( code_int_of_integer @ ( ord_max_Code_integer @ K @ L ) )
      = ( ord_max_int @ ( code_int_of_integer @ K ) @ ( code_int_of_integer @ L ) ) ) ).

% int_of_integer_max
thf(fact_5294_integer__eq__iff,axiom,
    ( ( ^ [Y3: code_integer,Z: code_integer] : Y3 = Z )
    = ( ^ [K2: code_integer,L2: code_integer] :
          ( ( code_int_of_integer @ K2 )
          = ( code_int_of_integer @ L2 ) ) ) ) ).

% integer_eq_iff
thf(fact_5295_integer__eqI,axiom,
    ! [K: code_integer,L: code_integer] :
      ( ( ( code_int_of_integer @ K )
        = ( code_int_of_integer @ L ) )
     => ( K = L ) ) ).

% integer_eqI
thf(fact_5296_int__of__integer__inject,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ( code_int_of_integer @ X2 )
        = ( code_int_of_integer @ Y ) )
      = ( X2 = Y ) ) ).

% int_of_integer_inject
thf(fact_5297_less__integer_Orep__eq,axiom,
    ( ord_le6747313008572928689nteger
    = ( ^ [X: code_integer,Xa4: code_integer] : ( ord_less_int @ ( code_int_of_integer @ X ) @ ( code_int_of_integer @ Xa4 ) ) ) ) ).

% less_integer.rep_eq
thf(fact_5298_integer__less__iff,axiom,
    ( ord_le6747313008572928689nteger
    = ( ^ [K2: code_integer,L2: code_integer] : ( ord_less_int @ ( code_int_of_integer @ K2 ) @ ( code_int_of_integer @ L2 ) ) ) ) ).

% integer_less_iff
thf(fact_5299_int__of__integer__less__iff,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( ord_less_int @ ( code_int_of_integer @ X2 ) @ ( code_int_of_integer @ Y ) )
      = ( ord_le6747313008572928689nteger @ X2 @ Y ) ) ).

% int_of_integer_less_iff
thf(fact_5300_less__eq__integer_Orep__eq,axiom,
    ( ord_le3102999989581377725nteger
    = ( ^ [X: code_integer,Xa4: code_integer] : ( ord_less_eq_int @ ( code_int_of_integer @ X ) @ ( code_int_of_integer @ Xa4 ) ) ) ) ).

% less_eq_integer.rep_eq
thf(fact_5301_integer__less__eq__iff,axiom,
    ( ord_le3102999989581377725nteger
    = ( ^ [K2: code_integer,L2: code_integer] : ( ord_less_eq_int @ ( code_int_of_integer @ K2 ) @ ( code_int_of_integer @ L2 ) ) ) ) ).

% integer_less_eq_iff
thf(fact_5302_nat__of__integer_Orep__eq,axiom,
    ( code_nat_of_integer
    = ( ^ [X: code_integer] : ( nat2 @ ( code_int_of_integer @ X ) ) ) ) ).

% nat_of_integer.rep_eq
thf(fact_5303_take__bit__integer_Orep__eq,axiom,
    ! [X2: nat,Xa: code_integer] :
      ( ( code_int_of_integer @ ( bit_se1745604003318907178nteger @ X2 @ Xa ) )
      = ( bit_se2923211474154528505it_int @ X2 @ ( code_int_of_integer @ Xa ) ) ) ).

% take_bit_integer.rep_eq
thf(fact_5304_not__integer_Orep__eq,axiom,
    ! [X2: code_integer] :
      ( ( code_int_of_integer @ ( bit_ri7632146776885996613nteger @ X2 ) )
      = ( bit_ri7919022796975470100ot_int @ ( code_int_of_integer @ X2 ) ) ) ).

% not_integer.rep_eq
thf(fact_5305_and__integer_Orep__eq,axiom,
    ! [X2: code_integer,Xa: code_integer] :
      ( ( code_int_of_integer @ ( bit_se3949692690581998587nteger @ X2 @ Xa ) )
      = ( bit_se725231765392027082nd_int @ ( code_int_of_integer @ X2 ) @ ( code_int_of_integer @ Xa ) ) ) ).

% and_integer.rep_eq
thf(fact_5306_or__integer_Orep__eq,axiom,
    ! [X2: code_integer,Xa: code_integer] :
      ( ( code_int_of_integer @ ( bit_se1080825931792720795nteger @ X2 @ Xa ) )
      = ( bit_se1409905431419307370or_int @ ( code_int_of_integer @ X2 ) @ ( code_int_of_integer @ Xa ) ) ) ).

% or_integer.rep_eq
thf(fact_5307_bit__integer_Orep__eq,axiom,
    ( bit_se9216721137139052372nteger
    = ( ^ [X: code_integer] : ( bit_se1146084159140164899it_int @ ( code_int_of_integer @ X ) ) ) ) ).

% bit_integer.rep_eq
thf(fact_5308_xor__integer_Orep__eq,axiom,
    ! [X2: code_integer,Xa: code_integer] :
      ( ( code_int_of_integer @ ( bit_se3222712562003087583nteger @ X2 @ Xa ) )
      = ( bit_se6526347334894502574or_int @ ( code_int_of_integer @ X2 ) @ ( code_int_of_integer @ Xa ) ) ) ).

% xor_integer.rep_eq
thf(fact_5309_push__bit__integer_Orep__eq,axiom,
    ! [X2: nat,Xa: code_integer] :
      ( ( code_int_of_integer @ ( bit_se7788150548672797655nteger @ X2 @ Xa ) )
      = ( bit_se545348938243370406it_int @ X2 @ ( code_int_of_integer @ Xa ) ) ) ).

% push_bit_integer.rep_eq
thf(fact_5310_drop__bit__integer_Orep__eq,axiom,
    ! [X2: nat,Xa: code_integer] :
      ( ( code_int_of_integer @ ( bit_se3928097537394005634nteger @ X2 @ Xa ) )
      = ( bit_se8568078237143864401it_int @ X2 @ ( code_int_of_integer @ Xa ) ) ) ).

% drop_bit_integer.rep_eq
thf(fact_5311_mask__integer_Orep__eq,axiom,
    ! [X2: nat] :
      ( ( code_int_of_integer @ ( bit_se2119862282449309892nteger @ X2 ) )
      = ( bit_se2000444600071755411sk_int @ X2 ) ) ).

% mask_integer.rep_eq
thf(fact_5312_unset__bit__integer_Orep__eq,axiom,
    ! [X2: nat,Xa: code_integer] :
      ( ( code_int_of_integer @ ( bit_se8260200283734997820nteger @ X2 @ Xa ) )
      = ( bit_se4203085406695923979it_int @ X2 @ ( code_int_of_integer @ Xa ) ) ) ).

% unset_bit_integer.rep_eq
thf(fact_5313_set__bit__integer_Orep__eq,axiom,
    ! [X2: nat,Xa: code_integer] :
      ( ( code_int_of_integer @ ( bit_se2793503036327961859nteger @ X2 @ Xa ) )
      = ( bit_se7879613467334960850it_int @ X2 @ ( code_int_of_integer @ Xa ) ) ) ).

% set_bit_integer.rep_eq
thf(fact_5314_flip__bit__integer_Orep__eq,axiom,
    ! [X2: nat,Xa: code_integer] :
      ( ( code_int_of_integer @ ( bit_se1345352211410354436nteger @ X2 @ Xa ) )
      = ( bit_se2159334234014336723it_int @ X2 @ ( code_int_of_integer @ Xa ) ) ) ).

% flip_bit_integer.rep_eq
thf(fact_5315_num__of__integer_Orep__eq,axiom,
    ( code_num_of_integer
    = ( ^ [X: code_integer] : ( num_of_nat @ ( nat2 @ ( code_int_of_integer @ X ) ) ) ) ) ).

% num_of_integer.rep_eq
thf(fact_5316_int__ge__less__than__def,axiom,
    ( int_ge_less_than
    = ( ^ [D4: int] :
          ( collec213857154873943460nt_int
          @ ( produc4947309494688390418_int_o
            @ ^ [Z7: int,Z3: int] :
                ( ( ord_less_eq_int @ D4 @ Z7 )
                & ( ord_less_int @ Z7 @ Z3 ) ) ) ) ) ) ).

% int_ge_less_than_def
thf(fact_5317_int__ge__less__than2__def,axiom,
    ( int_ge_less_than2
    = ( ^ [D4: int] :
          ( collec213857154873943460nt_int
          @ ( produc4947309494688390418_int_o
            @ ^ [Z7: int,Z3: int] :
                ( ( ord_less_eq_int @ D4 @ Z3 )
                & ( ord_less_int @ Z7 @ Z3 ) ) ) ) ) ) ).

% int_ge_less_than2_def
thf(fact_5318_Divides_Oadjust__div__def,axiom,
    ( adjust_div
    = ( produc8211389475949308722nt_int
      @ ^ [Q6: int,R2: int] : ( plus_plus_int @ Q6 @ ( zero_n2684676970156552555ol_int @ ( R2 != zero_zero_int ) ) ) ) ) ).

% Divides.adjust_div_def
thf(fact_5319_divmod__step__integer__def,axiom,
    ( unique4921790084139445826nteger
    = ( ^ [L2: num] :
          ( produc6916734918728496179nteger
          @ ^ [Q6: code_integer,R2: code_integer] : ( if_Pro6119634080678213985nteger @ ( ord_le3102999989581377725nteger @ ( numera6620942414471956472nteger @ L2 ) @ R2 ) @ ( produc1086072967326762835nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ Q6 ) @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ R2 @ ( numera6620942414471956472nteger @ L2 ) ) ) @ ( produc1086072967326762835nteger @ ( times_3573771949741848930nteger @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ Q6 ) @ R2 ) ) ) ) ) ).

% divmod_step_integer_def
thf(fact_5320_divmod__integer__def,axiom,
    ( code_divmod_integer
    = ( ^ [K2: code_integer,L2: code_integer] : ( produc1086072967326762835nteger @ ( divide6298287555418463151nteger @ K2 @ L2 ) @ ( modulo364778990260209775nteger @ K2 @ L2 ) ) ) ) ).

% divmod_integer_def
thf(fact_5321_Divides_Oadjust__div__eq,axiom,
    ! [Q2: int,R: int] :
      ( ( adjust_div @ ( product_Pair_int_int @ Q2 @ R ) )
      = ( plus_plus_int @ Q2 @ ( zero_n2684676970156552555ol_int @ ( R != zero_zero_int ) ) ) ) ).

% Divides.adjust_div_eq
thf(fact_5322_divmod__step__nat__def,axiom,
    ( unique5026877609467782581ep_nat
    = ( ^ [L2: num] :
          ( produc2626176000494625587at_nat
          @ ^ [Q6: nat,R2: nat] : ( if_Pro6206227464963214023at_nat @ ( ord_less_eq_nat @ ( numeral_numeral_nat @ L2 ) @ R2 ) @ ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Q6 ) @ one_one_nat ) @ ( minus_minus_nat @ R2 @ ( numeral_numeral_nat @ L2 ) ) ) @ ( product_Pair_nat_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Q6 ) @ R2 ) ) ) ) ) ).

% divmod_step_nat_def
thf(fact_5323_divmod__step__int__def,axiom,
    ( unique5024387138958732305ep_int
    = ( ^ [L2: num] :
          ( produc4245557441103728435nt_int
          @ ^ [Q6: int,R2: int] : ( if_Pro3027730157355071871nt_int @ ( ord_less_eq_int @ ( numeral_numeral_int @ L2 ) @ R2 ) @ ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Q6 ) @ one_one_int ) @ ( minus_minus_int @ R2 @ ( numeral_numeral_int @ L2 ) ) ) @ ( product_Pair_int_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Q6 ) @ R2 ) ) ) ) ) ).

% divmod_step_int_def
thf(fact_5324_take__bit__num__code,axiom,
    ( bit_take_bit_num
    = ( ^ [N3: nat,M2: num] :
          ( produc478579273971653890on_num
          @ ^ [A2: nat,X: num] :
              ( case_nat_option_num @ none_num
              @ ^ [O: nat] :
                  ( case_num_option_num @ ( some_num @ one )
                  @ ^ [P6: num] :
                      ( case_o6005452278849405969um_num @ none_num
                      @ ^ [Q6: num] : ( some_num @ ( bit0 @ Q6 ) )
                      @ ( bit_take_bit_num @ O @ P6 ) )
                  @ ^ [P6: num] : ( some_num @ ( case_option_num_num @ one @ bit1 @ ( bit_take_bit_num @ O @ P6 ) ) )
                  @ X )
              @ A2 )
          @ ( product_Pair_nat_num @ N3 @ M2 ) ) ) ) ).

% take_bit_num_code
thf(fact_5325_minus__one__div__numeral,axiom,
    ! [N: num] :
      ( ( divide_divide_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ N ) )
      = ( uminus_uminus_int @ ( adjust_div @ ( unique5052692396658037445od_int @ one @ N ) ) ) ) ).

% minus_one_div_numeral
thf(fact_5326_one__div__minus__numeral,axiom,
    ! [N: num] :
      ( ( divide_divide_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( uminus_uminus_int @ ( adjust_div @ ( unique5052692396658037445od_int @ one @ N ) ) ) ) ).

% one_div_minus_numeral
thf(fact_5327_divmod__BitM__2__eq,axiom,
    ! [M: num] :
      ( ( unique5052692396658037445od_int @ ( bitM @ M ) @ ( bit0 @ one ) )
      = ( product_Pair_int_int @ ( minus_minus_int @ ( numeral_numeral_int @ M ) @ one_one_int ) @ one_one_int ) ) ).

% divmod_BitM_2_eq
thf(fact_5328_divmod__integer_H__def,axiom,
    ( unique3479559517661332726nteger
    = ( ^ [M2: num,N3: num] : ( produc1086072967326762835nteger @ ( divide6298287555418463151nteger @ ( numera6620942414471956472nteger @ M2 ) @ ( numera6620942414471956472nteger @ N3 ) ) @ ( modulo364778990260209775nteger @ ( numera6620942414471956472nteger @ M2 ) @ ( numera6620942414471956472nteger @ N3 ) ) ) ) ) ).

% divmod_integer'_def
thf(fact_5329_divmod__nat__if,axiom,
    ( divmod_nat
    = ( ^ [M2: nat,N3: nat] :
          ( if_Pro6206227464963214023at_nat
          @ ( ( N3 = zero_zero_nat )
            | ( ord_less_nat @ M2 @ N3 ) )
          @ ( product_Pair_nat_nat @ zero_zero_nat @ M2 )
          @ ( produc2626176000494625587at_nat
            @ ^ [Q6: nat] : ( product_Pair_nat_nat @ ( suc @ Q6 ) )
            @ ( divmod_nat @ ( minus_minus_nat @ M2 @ N3 ) @ N3 ) ) ) ) ) ).

% divmod_nat_if
thf(fact_5330_neg__eucl__rel__int__mult__2,axiom,
    ! [B: int,A: int,Q2: int,R: int] :
      ( ( ord_less_eq_int @ B @ zero_zero_int )
     => ( ( eucl_rel_int @ ( plus_plus_int @ A @ one_one_int ) @ B @ ( product_Pair_int_int @ Q2 @ R ) )
       => ( eucl_rel_int @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) @ ( product_Pair_int_int @ Q2 @ ( minus_minus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ R ) @ one_one_int ) ) ) ) ) ).

% neg_eucl_rel_int_mult_2
thf(fact_5331_eucl__rel__int__by0,axiom,
    ! [K: int] : ( eucl_rel_int @ K @ zero_zero_int @ ( product_Pair_int_int @ zero_zero_int @ K ) ) ).

% eucl_rel_int_by0
thf(fact_5332_eucl__rel__int__dividesI,axiom,
    ! [L: int,K: int,Q2: int] :
      ( ( L != zero_zero_int )
     => ( ( K
          = ( times_times_int @ Q2 @ L ) )
       => ( eucl_rel_int @ K @ L @ ( product_Pair_int_int @ Q2 @ zero_zero_int ) ) ) ) ).

% eucl_rel_int_dividesI
thf(fact_5333_zminus1__lemma,axiom,
    ! [A: int,B: int,Q2: int,R: int] :
      ( ( eucl_rel_int @ A @ B @ ( product_Pair_int_int @ Q2 @ R ) )
     => ( ( B != zero_zero_int )
       => ( eucl_rel_int @ ( uminus_uminus_int @ A ) @ B @ ( product_Pair_int_int @ ( if_int @ ( R = zero_zero_int ) @ ( uminus_uminus_int @ Q2 ) @ ( minus_minus_int @ ( uminus_uminus_int @ Q2 ) @ one_one_int ) ) @ ( if_int @ ( R = zero_zero_int ) @ zero_zero_int @ ( minus_minus_int @ B @ R ) ) ) ) ) ) ).

% zminus1_lemma
thf(fact_5334_eucl__rel__int__iff,axiom,
    ! [K: int,L: int,Q2: int,R: int] :
      ( ( eucl_rel_int @ K @ L @ ( product_Pair_int_int @ Q2 @ R ) )
      = ( ( K
          = ( plus_plus_int @ ( times_times_int @ L @ Q2 ) @ R ) )
        & ( ( ord_less_int @ zero_zero_int @ L )
         => ( ( ord_less_eq_int @ zero_zero_int @ R )
            & ( ord_less_int @ R @ L ) ) )
        & ( ~ ( ord_less_int @ zero_zero_int @ L )
         => ( ( ( ord_less_int @ L @ zero_zero_int )
             => ( ( ord_less_int @ L @ R )
                & ( ord_less_eq_int @ R @ zero_zero_int ) ) )
            & ( ~ ( ord_less_int @ L @ zero_zero_int )
             => ( Q2 = zero_zero_int ) ) ) ) ) ) ).

% eucl_rel_int_iff
thf(fact_5335_eucl__rel__int__remainderI,axiom,
    ! [R: int,L: int,K: int,Q2: int] :
      ( ( ( sgn_sgn_int @ R )
        = ( sgn_sgn_int @ L ) )
     => ( ( ord_less_int @ ( abs_abs_int @ R ) @ ( abs_abs_int @ L ) )
       => ( ( K
            = ( plus_plus_int @ ( times_times_int @ Q2 @ L ) @ R ) )
         => ( eucl_rel_int @ K @ L @ ( product_Pair_int_int @ Q2 @ R ) ) ) ) ) ).

% eucl_rel_int_remainderI
thf(fact_5336_eucl__rel__int_Osimps,axiom,
    ( eucl_rel_int
    = ( ^ [A1: int,A22: int,A32: product_prod_int_int] :
          ( ? [K2: int] :
              ( ( A1 = K2 )
              & ( A22 = zero_zero_int )
              & ( A32
                = ( product_Pair_int_int @ zero_zero_int @ K2 ) ) )
          | ? [L2: int,K2: int,Q6: int] :
              ( ( A1 = K2 )
              & ( A22 = L2 )
              & ( A32
                = ( product_Pair_int_int @ Q6 @ zero_zero_int ) )
              & ( L2 != zero_zero_int )
              & ( K2
                = ( times_times_int @ Q6 @ L2 ) ) )
          | ? [R2: int,L2: int,K2: int,Q6: int] :
              ( ( A1 = K2 )
              & ( A22 = L2 )
              & ( A32
                = ( product_Pair_int_int @ Q6 @ R2 ) )
              & ( ( sgn_sgn_int @ R2 )
                = ( sgn_sgn_int @ L2 ) )
              & ( ord_less_int @ ( abs_abs_int @ R2 ) @ ( abs_abs_int @ L2 ) )
              & ( K2
                = ( plus_plus_int @ ( times_times_int @ Q6 @ L2 ) @ R2 ) ) ) ) ) ) ).

% eucl_rel_int.simps
thf(fact_5337_eucl__rel__int_Ocases,axiom,
    ! [A12: int,A23: int,A33: product_prod_int_int] :
      ( ( eucl_rel_int @ A12 @ A23 @ A33 )
     => ( ( ( A23 = zero_zero_int )
         => ( A33
           != ( product_Pair_int_int @ zero_zero_int @ A12 ) ) )
       => ( ! [Q4: int] :
              ( ( A33
                = ( product_Pair_int_int @ Q4 @ zero_zero_int ) )
             => ( ( A23 != zero_zero_int )
               => ( A12
                 != ( times_times_int @ Q4 @ A23 ) ) ) )
         => ~ ! [R5: int,Q4: int] :
                ( ( A33
                  = ( product_Pair_int_int @ Q4 @ R5 ) )
               => ( ( ( sgn_sgn_int @ R5 )
                    = ( sgn_sgn_int @ A23 ) )
                 => ( ( ord_less_int @ ( abs_abs_int @ R5 ) @ ( abs_abs_int @ A23 ) )
                   => ( A12
                     != ( plus_plus_int @ ( times_times_int @ Q4 @ A23 ) @ R5 ) ) ) ) ) ) ) ) ).

% eucl_rel_int.cases
thf(fact_5338_pos__eucl__rel__int__mult__2,axiom,
    ! [B: int,A: int,Q2: int,R: int] :
      ( ( ord_less_eq_int @ zero_zero_int @ B )
     => ( ( eucl_rel_int @ A @ B @ ( product_Pair_int_int @ Q2 @ R ) )
       => ( eucl_rel_int @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) ) @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ B ) @ ( product_Pair_int_int @ Q2 @ ( plus_plus_int @ one_one_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ R ) ) ) ) ) ) ).

% pos_eucl_rel_int_mult_2
thf(fact_5339_and__int_Opsimps,axiom,
    ! [K: int,L: int] :
      ( ( accp_P1096762738010456898nt_int @ bit_and_int_rel @ ( product_Pair_int_int @ K @ L ) )
     => ( ( ( ( member_int @ K @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
            & ( member_int @ L @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
         => ( ( bit_se725231765392027082nd_int @ K @ L )
            = ( uminus_uminus_int
              @ ( zero_n2684676970156552555ol_int
                @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K )
                  & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L ) ) ) ) ) )
        & ( ~ ( ( member_int @ K @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
              & ( member_int @ L @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
         => ( ( bit_se725231765392027082nd_int @ K @ L )
            = ( plus_plus_int
              @ ( zero_n2684676970156552555ol_int
                @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ K )
                  & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ L ) ) )
              @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( divide_divide_int @ K @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% and_int.psimps
thf(fact_5340_and__int_Opelims,axiom,
    ! [X2: int,Xa: int,Y: int] :
      ( ( ( bit_se725231765392027082nd_int @ X2 @ Xa )
        = Y )
     => ( ( accp_P1096762738010456898nt_int @ bit_and_int_rel @ ( product_Pair_int_int @ X2 @ Xa ) )
       => ~ ( ( ( ( ( member_int @ X2 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
                  & ( member_int @ Xa @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
               => ( Y
                  = ( uminus_uminus_int
                    @ ( zero_n2684676970156552555ol_int
                      @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ X2 )
                        & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Xa ) ) ) ) ) )
              & ( ~ ( ( member_int @ X2 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
                    & ( member_int @ Xa @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
               => ( Y
                  = ( plus_plus_int
                    @ ( zero_n2684676970156552555ol_int
                      @ ( ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ X2 )
                        & ~ ( dvd_dvd_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Xa ) ) )
                    @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ ( bit_se725231765392027082nd_int @ ( divide_divide_int @ X2 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ Xa @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ) ) ) ) )
           => ~ ( accp_P1096762738010456898nt_int @ bit_and_int_rel @ ( product_Pair_int_int @ X2 @ Xa ) ) ) ) ) ).

% and_int.pelims
thf(fact_5341_and__int_Opinduct,axiom,
    ! [A0: int,A12: int,P: int > int > $o] :
      ( ( accp_P1096762738010456898nt_int @ bit_and_int_rel @ ( product_Pair_int_int @ A0 @ A12 ) )
     => ( ! [K3: int,L3: int] :
            ( ( accp_P1096762738010456898nt_int @ bit_and_int_rel @ ( product_Pair_int_int @ K3 @ L3 ) )
           => ( ( ~ ( ( member_int @ K3 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) )
                    & ( member_int @ L3 @ ( insert_int @ zero_zero_int @ ( insert_int @ ( uminus_uminus_int @ one_one_int ) @ bot_bot_set_int ) ) ) )
               => ( P @ ( divide_divide_int @ K3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) @ ( divide_divide_int @ L3 @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) )
             => ( P @ K3 @ L3 ) ) )
       => ( P @ A0 @ A12 ) ) ) ).

% and_int.pinduct
thf(fact_5342_upto_Opelims,axiom,
    ! [X2: int,Xa: int,Y: list_int] :
      ( ( ( upto @ X2 @ Xa )
        = Y )
     => ( ( accp_P1096762738010456898nt_int @ upto_rel @ ( product_Pair_int_int @ X2 @ Xa ) )
       => ~ ( ( ( ( ord_less_eq_int @ X2 @ Xa )
               => ( Y
                  = ( cons_int @ X2 @ ( upto @ ( plus_plus_int @ X2 @ one_one_int ) @ Xa ) ) ) )
              & ( ~ ( ord_less_eq_int @ X2 @ Xa )
               => ( Y = nil_int ) ) )
           => ~ ( accp_P1096762738010456898nt_int @ upto_rel @ ( product_Pair_int_int @ X2 @ Xa ) ) ) ) ) ).

% upto.pelims
thf(fact_5343_upto_Opsimps,axiom,
    ! [I: int,J: int] :
      ( ( accp_P1096762738010456898nt_int @ upto_rel @ ( product_Pair_int_int @ I @ J ) )
     => ( ( ( ord_less_eq_int @ I @ J )
         => ( ( upto @ I @ J )
            = ( cons_int @ I @ ( upto @ ( plus_plus_int @ I @ one_one_int ) @ J ) ) ) )
        & ( ~ ( ord_less_eq_int @ I @ J )
         => ( ( upto @ I @ J )
            = nil_int ) ) ) ) ).

% upto.psimps
thf(fact_5344_upto_Opinduct,axiom,
    ! [A0: int,A12: int,P: int > int > $o] :
      ( ( accp_P1096762738010456898nt_int @ upto_rel @ ( product_Pair_int_int @ A0 @ A12 ) )
     => ( ! [I3: int,J2: int] :
            ( ( accp_P1096762738010456898nt_int @ upto_rel @ ( product_Pair_int_int @ I3 @ J2 ) )
           => ( ( ( ord_less_eq_int @ I3 @ J2 )
               => ( P @ ( plus_plus_int @ I3 @ one_one_int ) @ J2 ) )
             => ( P @ I3 @ J2 ) ) )
       => ( P @ A0 @ A12 ) ) ) ).

% upto.pinduct
thf(fact_5345_divmod__integer__eq__cases,axiom,
    ( code_divmod_integer
    = ( ^ [K2: code_integer,L2: code_integer] :
          ( if_Pro6119634080678213985nteger @ ( K2 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger )
          @ ( if_Pro6119634080678213985nteger @ ( L2 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ K2 )
            @ ( comp_C1593894019821074884nteger @ ( comp_C8797469213163452608nteger @ produc6499014454317279255nteger @ times_3573771949741848930nteger ) @ sgn_sgn_Code_integer @ L2
              @ ( if_Pro6119634080678213985nteger
                @ ( ( sgn_sgn_Code_integer @ K2 )
                  = ( sgn_sgn_Code_integer @ L2 ) )
                @ ( code_divmod_abs @ K2 @ L2 )
                @ ( produc6916734918728496179nteger
                  @ ^ [R2: code_integer,S4: code_integer] : ( if_Pro6119634080678213985nteger @ ( S4 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( uminus1351360451143612070nteger @ R2 ) @ zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ R2 ) @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ ( abs_abs_Code_integer @ L2 ) @ S4 ) ) )
                  @ ( code_divmod_abs @ K2 @ L2 ) ) ) ) ) ) ) ) ).

% divmod_integer_eq_cases
thf(fact_5346_divmod__abs__code_I6_J,axiom,
    ! [J: code_integer] :
      ( ( code_divmod_abs @ zero_z3403309356797280102nteger @ J )
      = ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger ) ) ).

% divmod_abs_code(6)
thf(fact_5347_divmod__abs__code_I5_J,axiom,
    ! [J: code_integer] :
      ( ( code_divmod_abs @ J @ zero_z3403309356797280102nteger )
      = ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ ( abs_abs_Code_integer @ J ) ) ) ).

% divmod_abs_code(5)
thf(fact_5348_divmod__integer__code,axiom,
    ( code_divmod_integer
    = ( ^ [K2: code_integer,L2: code_integer] :
          ( if_Pro6119634080678213985nteger @ ( K2 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ zero_z3403309356797280102nteger )
          @ ( if_Pro6119634080678213985nteger @ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ L2 )
            @ ( if_Pro6119634080678213985nteger @ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ K2 ) @ ( code_divmod_abs @ K2 @ L2 )
              @ ( produc6916734918728496179nteger
                @ ^ [R2: code_integer,S4: code_integer] : ( if_Pro6119634080678213985nteger @ ( S4 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( uminus1351360451143612070nteger @ R2 ) @ zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ R2 ) @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ L2 @ S4 ) ) )
                @ ( code_divmod_abs @ K2 @ L2 ) ) )
            @ ( if_Pro6119634080678213985nteger @ ( L2 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ zero_z3403309356797280102nteger @ K2 )
              @ ( produc6499014454317279255nteger @ uminus1351360451143612070nteger
                @ ( if_Pro6119634080678213985nteger @ ( ord_le6747313008572928689nteger @ K2 @ zero_z3403309356797280102nteger ) @ ( code_divmod_abs @ K2 @ L2 )
                  @ ( produc6916734918728496179nteger
                    @ ^ [R2: code_integer,S4: code_integer] : ( if_Pro6119634080678213985nteger @ ( S4 = zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( uminus1351360451143612070nteger @ R2 ) @ zero_z3403309356797280102nteger ) @ ( produc1086072967326762835nteger @ ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ R2 ) @ one_one_Code_integer ) @ ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ L2 ) @ S4 ) ) )
                    @ ( code_divmod_abs @ K2 @ L2 ) ) ) ) ) ) ) ) ) ).

% divmod_integer_code
thf(fact_5349_divmod__abs__def,axiom,
    ( code_divmod_abs
    = ( ^ [K2: code_integer,L2: code_integer] : ( produc1086072967326762835nteger @ ( divide6298287555418463151nteger @ ( abs_abs_Code_integer @ K2 ) @ ( abs_abs_Code_integer @ L2 ) ) @ ( modulo364778990260209775nteger @ ( abs_abs_Code_integer @ K2 ) @ ( abs_abs_Code_integer @ L2 ) ) ) ) ) ).

% divmod_abs_def
thf(fact_5350_bit__cut__integer__code,axiom,
    ( code_bit_cut_integer
    = ( ^ [K2: code_integer] :
          ( if_Pro5737122678794959658eger_o @ ( K2 = zero_z3403309356797280102nteger ) @ ( produc6677183202524767010eger_o @ zero_z3403309356797280102nteger @ $false )
          @ ( produc9125791028180074456eger_o
            @ ^ [R2: code_integer,S4: code_integer] : ( produc6677183202524767010eger_o @ ( if_Code_integer @ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ K2 ) @ R2 @ ( minus_8373710615458151222nteger @ ( uminus1351360451143612070nteger @ R2 ) @ S4 ) ) @ ( S4 = one_one_Code_integer ) )
            @ ( code_divmod_abs @ K2 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) ) ) ) ) ).

% bit_cut_integer_code
thf(fact_5351_normalize__negative,axiom,
    ! [Q2: int,P3: int] :
      ( ( ord_less_int @ Q2 @ zero_zero_int )
     => ( ( normalize @ ( product_Pair_int_int @ P3 @ Q2 ) )
        = ( normalize @ ( product_Pair_int_int @ ( uminus_uminus_int @ P3 ) @ ( uminus_uminus_int @ Q2 ) ) ) ) ) ).

% normalize_negative
thf(fact_5352_bit__cut__integer__def,axiom,
    ( code_bit_cut_integer
    = ( ^ [K2: code_integer] :
          ( produc6677183202524767010eger_o @ ( divide6298287555418463151nteger @ K2 @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) )
          @ ~ ( dvd_dvd_Code_integer @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) @ K2 ) ) ) ) ).

% bit_cut_integer_def
thf(fact_5353_normalize__denom__zero,axiom,
    ! [P3: int] :
      ( ( normalize @ ( product_Pair_int_int @ P3 @ zero_zero_int ) )
      = ( product_Pair_int_int @ zero_zero_int @ one_one_int ) ) ).

% normalize_denom_zero
thf(fact_5354_normalize__denom__pos,axiom,
    ! [R: product_prod_int_int,P3: int,Q2: int] :
      ( ( ( normalize @ R )
        = ( product_Pair_int_int @ P3 @ Q2 ) )
     => ( ord_less_int @ zero_zero_int @ Q2 ) ) ).

% normalize_denom_pos
thf(fact_5355_normalize__crossproduct,axiom,
    ! [Q2: int,S: int,P3: int,R: int] :
      ( ( Q2 != zero_zero_int )
     => ( ( S != zero_zero_int )
       => ( ( ( normalize @ ( product_Pair_int_int @ P3 @ Q2 ) )
            = ( normalize @ ( product_Pair_int_int @ R @ S ) ) )
         => ( ( times_times_int @ P3 @ S )
            = ( times_times_int @ R @ Q2 ) ) ) ) ) ).

% normalize_crossproduct
thf(fact_5356_prod__decode__aux_Oelims,axiom,
    ! [X2: nat,Xa: nat,Y: product_prod_nat_nat] :
      ( ( ( nat_prod_decode_aux @ X2 @ Xa )
        = Y )
     => ( ( ( ord_less_eq_nat @ Xa @ X2 )
         => ( Y
            = ( product_Pair_nat_nat @ Xa @ ( minus_minus_nat @ X2 @ Xa ) ) ) )
        & ( ~ ( ord_less_eq_nat @ Xa @ X2 )
         => ( Y
            = ( nat_prod_decode_aux @ ( suc @ X2 ) @ ( minus_minus_nat @ Xa @ ( suc @ X2 ) ) ) ) ) ) ) ).

% prod_decode_aux.elims
thf(fact_5357_prod__decode__aux_Osimps,axiom,
    ( nat_prod_decode_aux
    = ( ^ [K2: nat,M2: nat] : ( if_Pro6206227464963214023at_nat @ ( ord_less_eq_nat @ M2 @ K2 ) @ ( product_Pair_nat_nat @ M2 @ ( minus_minus_nat @ K2 @ M2 ) ) @ ( nat_prod_decode_aux @ ( suc @ K2 ) @ ( minus_minus_nat @ M2 @ ( suc @ K2 ) ) ) ) ) ) ).

% prod_decode_aux.simps
thf(fact_5358_bezw__0,axiom,
    ! [X2: nat] :
      ( ( bezw @ X2 @ zero_zero_nat )
      = ( product_Pair_int_int @ one_one_int @ zero_zero_int ) ) ).

% bezw_0
thf(fact_5359_times__int_Oabs__eq,axiom,
    ! [Xa: product_prod_nat_nat,X2: product_prod_nat_nat] :
      ( ( times_times_int @ ( abs_Integ @ Xa ) @ ( abs_Integ @ X2 ) )
      = ( abs_Integ
        @ ( produc27273713700761075at_nat
          @ ^ [X: nat,Y4: nat] :
              ( produc2626176000494625587at_nat
              @ ^ [U2: nat,V3: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ X @ U2 ) @ ( times_times_nat @ Y4 @ V3 ) ) @ ( plus_plus_nat @ ( times_times_nat @ X @ V3 ) @ ( times_times_nat @ Y4 @ U2 ) ) ) )
          @ Xa
          @ X2 ) ) ) ).

% times_int.abs_eq
thf(fact_5360_int_Oabs__induct,axiom,
    ! [P: int > $o,X2: int] :
      ( ! [Y2: product_prod_nat_nat] : ( P @ ( abs_Integ @ Y2 ) )
     => ( P @ X2 ) ) ).

% int.abs_induct
thf(fact_5361_eq__Abs__Integ,axiom,
    ! [Z2: int] :
      ~ ! [X3: nat,Y2: nat] :
          ( Z2
         != ( abs_Integ @ ( product_Pair_nat_nat @ X3 @ Y2 ) ) ) ).

% eq_Abs_Integ
thf(fact_5362_nat_Oabs__eq,axiom,
    ! [X2: product_prod_nat_nat] :
      ( ( nat2 @ ( abs_Integ @ X2 ) )
      = ( produc6842872674320459806at_nat @ minus_minus_nat @ X2 ) ) ).

% nat.abs_eq
thf(fact_5363_zero__int__def,axiom,
    ( zero_zero_int
    = ( abs_Integ @ ( product_Pair_nat_nat @ zero_zero_nat @ zero_zero_nat ) ) ) ).

% zero_int_def
thf(fact_5364_int__def,axiom,
    ( semiri1314217659103216013at_int
    = ( ^ [N3: nat] : ( abs_Integ @ ( product_Pair_nat_nat @ N3 @ zero_zero_nat ) ) ) ) ).

% int_def
thf(fact_5365_uminus__int_Oabs__eq,axiom,
    ! [X2: product_prod_nat_nat] :
      ( ( uminus_uminus_int @ ( abs_Integ @ X2 ) )
      = ( abs_Integ
        @ ( produc2626176000494625587at_nat
          @ ^ [X: nat,Y4: nat] : ( product_Pair_nat_nat @ Y4 @ X )
          @ X2 ) ) ) ).

% uminus_int.abs_eq
thf(fact_5366_one__int__def,axiom,
    ( one_one_int
    = ( abs_Integ @ ( product_Pair_nat_nat @ one_one_nat @ zero_zero_nat ) ) ) ).

% one_int_def
thf(fact_5367_less__int_Oabs__eq,axiom,
    ! [Xa: product_prod_nat_nat,X2: product_prod_nat_nat] :
      ( ( ord_less_int @ ( abs_Integ @ Xa ) @ ( abs_Integ @ X2 ) )
      = ( produc8739625826339149834_nat_o
        @ ^ [X: nat,Y4: nat] :
            ( produc6081775807080527818_nat_o
            @ ^ [U2: nat,V3: nat] : ( ord_less_nat @ ( plus_plus_nat @ X @ V3 ) @ ( plus_plus_nat @ U2 @ Y4 ) ) )
        @ Xa
        @ X2 ) ) ).

% less_int.abs_eq
thf(fact_5368_less__eq__int_Oabs__eq,axiom,
    ! [Xa: product_prod_nat_nat,X2: product_prod_nat_nat] :
      ( ( ord_less_eq_int @ ( abs_Integ @ Xa ) @ ( abs_Integ @ X2 ) )
      = ( produc8739625826339149834_nat_o
        @ ^ [X: nat,Y4: nat] :
            ( produc6081775807080527818_nat_o
            @ ^ [U2: nat,V3: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ X @ V3 ) @ ( plus_plus_nat @ U2 @ Y4 ) ) )
        @ Xa
        @ X2 ) ) ).

% less_eq_int.abs_eq
thf(fact_5369_plus__int_Oabs__eq,axiom,
    ! [Xa: product_prod_nat_nat,X2: product_prod_nat_nat] :
      ( ( plus_plus_int @ ( abs_Integ @ Xa ) @ ( abs_Integ @ X2 ) )
      = ( abs_Integ
        @ ( produc27273713700761075at_nat
          @ ^ [X: nat,Y4: nat] :
              ( produc2626176000494625587at_nat
              @ ^ [U2: nat,V3: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X @ U2 ) @ ( plus_plus_nat @ Y4 @ V3 ) ) )
          @ Xa
          @ X2 ) ) ) ).

% plus_int.abs_eq
thf(fact_5370_minus__int_Oabs__eq,axiom,
    ! [Xa: product_prod_nat_nat,X2: product_prod_nat_nat] :
      ( ( minus_minus_int @ ( abs_Integ @ Xa ) @ ( abs_Integ @ X2 ) )
      = ( abs_Integ
        @ ( produc27273713700761075at_nat
          @ ^ [X: nat,Y4: nat] :
              ( produc2626176000494625587at_nat
              @ ^ [U2: nat,V3: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X @ V3 ) @ ( plus_plus_nat @ Y4 @ U2 ) ) )
          @ Xa
          @ X2 ) ) ) ).

% minus_int.abs_eq
thf(fact_5371_rat__minus__code,axiom,
    ! [P3: rat,Q2: rat] :
      ( ( quotient_of @ ( minus_minus_rat @ P3 @ Q2 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A2: int,C4: int] :
            ( produc4245557441103728435nt_int
            @ ^ [B2: int,D4: int] : ( normalize @ ( product_Pair_int_int @ ( minus_minus_int @ ( times_times_int @ A2 @ D4 ) @ ( times_times_int @ B2 @ C4 ) ) @ ( times_times_int @ C4 @ D4 ) ) )
            @ ( quotient_of @ Q2 ) )
        @ ( quotient_of @ P3 ) ) ) ).

% rat_minus_code
thf(fact_5372_rat__plus__code,axiom,
    ! [P3: rat,Q2: rat] :
      ( ( quotient_of @ ( plus_plus_rat @ P3 @ Q2 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A2: int,C4: int] :
            ( produc4245557441103728435nt_int
            @ ^ [B2: int,D4: int] : ( normalize @ ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ A2 @ D4 ) @ ( times_times_int @ B2 @ C4 ) ) @ ( times_times_int @ C4 @ D4 ) ) )
            @ ( quotient_of @ Q2 ) )
        @ ( quotient_of @ P3 ) ) ) ).

% rat_plus_code
thf(fact_5373_sort__upto,axiom,
    ! [I: int,J: int] :
      ( ( linord1735203802627413978nt_int
        @ ^ [X: int] : X
        @ ( upto @ I @ J ) )
      = ( upto @ I @ J ) ) ).

% sort_upto
thf(fact_5374_rat__one__code,axiom,
    ( ( quotient_of @ one_one_rat )
    = ( product_Pair_int_int @ one_one_int @ one_one_int ) ) ).

% rat_one_code
thf(fact_5375_rat__zero__code,axiom,
    ( ( quotient_of @ zero_zero_rat )
    = ( product_Pair_int_int @ zero_zero_int @ one_one_int ) ) ).

% rat_zero_code
thf(fact_5376_quotient__of__number_I3_J,axiom,
    ! [K: num] :
      ( ( quotient_of @ ( numeral_numeral_rat @ K ) )
      = ( product_Pair_int_int @ ( numeral_numeral_int @ K ) @ one_one_int ) ) ).

% quotient_of_number(3)
thf(fact_5377_quotient__of__number_I4_J,axiom,
    ( ( quotient_of @ ( uminus_uminus_rat @ one_one_rat ) )
    = ( product_Pair_int_int @ ( uminus_uminus_int @ one_one_int ) @ one_one_int ) ) ).

% quotient_of_number(4)
thf(fact_5378_quotient__of__number_I5_J,axiom,
    ! [K: num] :
      ( ( quotient_of @ ( uminus_uminus_rat @ ( numeral_numeral_rat @ K ) ) )
      = ( product_Pair_int_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) @ one_one_int ) ) ).

% quotient_of_number(5)
thf(fact_5379_diff__rat__def,axiom,
    ( minus_minus_rat
    = ( ^ [Q6: rat,R2: rat] : ( plus_plus_rat @ Q6 @ ( uminus_uminus_rat @ R2 ) ) ) ) ).

% diff_rat_def
thf(fact_5380_quotient__of__denom__pos,axiom,
    ! [R: rat,P3: int,Q2: int] :
      ( ( ( quotient_of @ R )
        = ( product_Pair_int_int @ P3 @ Q2 ) )
     => ( ord_less_int @ zero_zero_int @ Q2 ) ) ).

% quotient_of_denom_pos
thf(fact_5381_rat__floor__code,axiom,
    ( archim3151403230148437115or_rat
    = ( ^ [P6: rat] : ( produc8211389475949308722nt_int @ divide_divide_int @ ( quotient_of @ P6 ) ) ) ) ).

% rat_floor_code
thf(fact_5382_rat__uminus__code,axiom,
    ! [P3: rat] :
      ( ( quotient_of @ ( uminus_uminus_rat @ P3 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A2: int] : ( product_Pair_int_int @ ( uminus_uminus_int @ A2 ) )
        @ ( quotient_of @ P3 ) ) ) ).

% rat_uminus_code
thf(fact_5383_rat__abs__code,axiom,
    ! [P3: rat] :
      ( ( quotient_of @ ( abs_abs_rat @ P3 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A2: int] : ( product_Pair_int_int @ ( abs_abs_int @ A2 ) )
        @ ( quotient_of @ P3 ) ) ) ).

% rat_abs_code
thf(fact_5384_rat__less__eq__code,axiom,
    ( ord_less_eq_rat
    = ( ^ [P6: rat,Q6: rat] :
          ( produc4947309494688390418_int_o
          @ ^ [A2: int,C4: int] :
              ( produc4947309494688390418_int_o
              @ ^ [B2: int,D4: int] : ( ord_less_eq_int @ ( times_times_int @ A2 @ D4 ) @ ( times_times_int @ C4 @ B2 ) )
              @ ( quotient_of @ Q6 ) )
          @ ( quotient_of @ P6 ) ) ) ) ).

% rat_less_eq_code
thf(fact_5385_rat__less__code,axiom,
    ( ord_less_rat
    = ( ^ [P6: rat,Q6: rat] :
          ( produc4947309494688390418_int_o
          @ ^ [A2: int,C4: int] :
              ( produc4947309494688390418_int_o
              @ ^ [B2: int,D4: int] : ( ord_less_int @ ( times_times_int @ A2 @ D4 ) @ ( times_times_int @ C4 @ B2 ) )
              @ ( quotient_of @ Q6 ) )
          @ ( quotient_of @ P6 ) ) ) ) ).

% rat_less_code
thf(fact_5386_rat__divide__code,axiom,
    ! [P3: rat,Q2: rat] :
      ( ( quotient_of @ ( divide_divide_rat @ P3 @ Q2 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A2: int,C4: int] :
            ( produc4245557441103728435nt_int
            @ ^ [B2: int,D4: int] : ( normalize @ ( product_Pair_int_int @ ( times_times_int @ A2 @ D4 ) @ ( times_times_int @ C4 @ B2 ) ) )
            @ ( quotient_of @ Q2 ) )
        @ ( quotient_of @ P3 ) ) ) ).

% rat_divide_code
thf(fact_5387_rat__times__code,axiom,
    ! [P3: rat,Q2: rat] :
      ( ( quotient_of @ ( times_times_rat @ P3 @ Q2 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A2: int,C4: int] :
            ( produc4245557441103728435nt_int
            @ ^ [B2: int,D4: int] : ( normalize @ ( product_Pair_int_int @ ( times_times_int @ A2 @ B2 ) @ ( times_times_int @ C4 @ D4 ) ) )
            @ ( quotient_of @ Q2 ) )
        @ ( quotient_of @ P3 ) ) ) ).

% rat_times_code
thf(fact_5388_quotient__of__int,axiom,
    ! [A: int] :
      ( ( quotient_of @ ( of_int @ A ) )
      = ( product_Pair_int_int @ A @ one_one_int ) ) ).

% quotient_of_int
thf(fact_5389_rat__inverse__code,axiom,
    ! [P3: rat] :
      ( ( quotient_of @ ( inverse_inverse_rat @ P3 ) )
      = ( produc4245557441103728435nt_int
        @ ^ [A2: int,B2: int] : ( if_Pro3027730157355071871nt_int @ ( A2 = zero_zero_int ) @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ ( product_Pair_int_int @ ( times_times_int @ ( sgn_sgn_int @ A2 ) @ B2 ) @ ( abs_abs_int @ A2 ) ) )
        @ ( quotient_of @ P3 ) ) ) ).

% rat_inverse_code
thf(fact_5390_sgn__rat__def,axiom,
    ( sgn_sgn_rat
    = ( ^ [A2: rat] : ( if_rat @ ( A2 = zero_zero_rat ) @ zero_zero_rat @ ( if_rat @ ( ord_less_rat @ zero_zero_rat @ A2 ) @ one_one_rat @ ( uminus_uminus_rat @ one_one_rat ) ) ) ) ) ).

% sgn_rat_def
thf(fact_5391_Frct__code__post_I5_J,axiom,
    ! [K: num] :
      ( ( frct @ ( product_Pair_int_int @ one_one_int @ ( numeral_numeral_int @ K ) ) )
      = ( divide_divide_rat @ one_one_rat @ ( numeral_numeral_rat @ K ) ) ) ).

% Frct_code_post(5)
thf(fact_5392_pow_Osimps_I1_J,axiom,
    ! [X2: num] :
      ( ( pow @ X2 @ one )
      = X2 ) ).

% pow.simps(1)
thf(fact_5393_Frct__code__post_I1_J,axiom,
    ! [A: int] :
      ( ( frct @ ( product_Pair_int_int @ zero_zero_int @ A ) )
      = zero_zero_rat ) ).

% Frct_code_post(1)
thf(fact_5394_Frct__code__post_I2_J,axiom,
    ! [A: int] :
      ( ( frct @ ( product_Pair_int_int @ A @ zero_zero_int ) )
      = zero_zero_rat ) ).

% Frct_code_post(2)
thf(fact_5395_Frct__code__post_I3_J,axiom,
    ( ( frct @ ( product_Pair_int_int @ one_one_int @ one_one_int ) )
    = one_one_rat ) ).

% Frct_code_post(3)
thf(fact_5396_Frct__code__post_I4_J,axiom,
    ! [K: num] :
      ( ( frct @ ( product_Pair_int_int @ ( numeral_numeral_int @ K ) @ one_one_int ) )
      = ( numeral_numeral_rat @ K ) ) ).

% Frct_code_post(4)
thf(fact_5397_less__eq__int_Orep__eq,axiom,
    ( ord_less_eq_int
    = ( ^ [X: int,Xa4: int] :
          ( produc8739625826339149834_nat_o
          @ ^ [Y4: nat,Z3: nat] :
              ( produc6081775807080527818_nat_o
              @ ^ [U2: nat,V3: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ Y4 @ V3 ) @ ( plus_plus_nat @ U2 @ Z3 ) ) )
          @ ( rep_Integ @ X )
          @ ( rep_Integ @ Xa4 ) ) ) ) ).

% less_eq_int.rep_eq
thf(fact_5398_nat_Orep__eq,axiom,
    ( nat2
    = ( ^ [X: int] : ( produc6842872674320459806at_nat @ minus_minus_nat @ ( rep_Integ @ X ) ) ) ) ).

% nat.rep_eq
thf(fact_5399_less__int_Orep__eq,axiom,
    ( ord_less_int
    = ( ^ [X: int,Xa4: int] :
          ( produc8739625826339149834_nat_o
          @ ^ [Y4: nat,Z3: nat] :
              ( produc6081775807080527818_nat_o
              @ ^ [U2: nat,V3: nat] : ( ord_less_nat @ ( plus_plus_nat @ Y4 @ V3 ) @ ( plus_plus_nat @ U2 @ Z3 ) ) )
          @ ( rep_Integ @ X )
          @ ( rep_Integ @ Xa4 ) ) ) ) ).

% less_int.rep_eq
thf(fact_5400_sort__upt,axiom,
    ! [M: nat,N: nat] :
      ( ( linord738340561235409698at_nat
        @ ^ [X: nat] : X
        @ ( upt @ M @ N ) )
      = ( upt @ M @ N ) ) ).

% sort_upt
thf(fact_5401_upt__0__eq__Nil__conv,axiom,
    ! [J: nat] :
      ( ( ( upt @ zero_zero_nat @ J )
        = nil_nat )
      = ( J = zero_zero_nat ) ) ).

% upt_0_eq_Nil_conv
thf(fact_5402_upt__merge,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( ord_less_eq_nat @ J @ K ) )
     => ( ( append_nat @ ( upt @ I @ J ) @ ( upt @ J @ K ) )
        = ( upt @ I @ K ) ) ) ).

% upt_merge
thf(fact_5403_upt__conv__Nil,axiom,
    ! [J: nat,I: nat] :
      ( ( ord_less_eq_nat @ J @ I )
     => ( ( upt @ I @ J )
        = nil_nat ) ) ).

% upt_conv_Nil
thf(fact_5404_drop__upt,axiom,
    ! [M: nat,I: nat,J: nat] :
      ( ( drop_nat @ M @ ( upt @ I @ J ) )
      = ( upt @ ( plus_plus_nat @ I @ M ) @ J ) ) ).

% drop_upt
thf(fact_5405_upt__eq__Nil__conv,axiom,
    ! [I: nat,J: nat] :
      ( ( ( upt @ I @ J )
        = nil_nat )
      = ( ( J = zero_zero_nat )
        | ( ord_less_eq_nat @ J @ I ) ) ) ).

% upt_eq_Nil_conv
thf(fact_5406_take__upt,axiom,
    ! [I: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ M ) @ N )
     => ( ( take_nat @ M @ ( upt @ I @ N ) )
        = ( upt @ I @ ( plus_plus_nat @ I @ M ) ) ) ) ).

% take_upt
thf(fact_5407_length__upt,axiom,
    ! [I: nat,J: nat] :
      ( ( size_size_list_nat @ ( upt @ I @ J ) )
      = ( minus_minus_nat @ J @ I ) ) ).

% length_upt
thf(fact_5408_last__upt,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( last_nat @ ( upt @ I @ J ) )
        = ( minus_minus_nat @ J @ one_one_nat ) ) ) ).

% last_upt
thf(fact_5409_nth__upt,axiom,
    ! [I: nat,K: nat,J: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ J )
     => ( ( nth_nat @ ( upt @ I @ J ) @ K )
        = ( plus_plus_nat @ I @ K ) ) ) ).

% nth_upt
thf(fact_5410_map__add__upt_H,axiom,
    ! [Ofs: nat,A: nat,B: nat] :
      ( ( map_nat_nat
        @ ^ [I2: nat] : ( plus_plus_nat @ I2 @ Ofs )
        @ ( upt @ A @ B ) )
      = ( upt @ ( plus_plus_nat @ A @ Ofs ) @ ( plus_plus_nat @ B @ Ofs ) ) ) ).

% map_add_upt'
thf(fact_5411_upt__eq__append__conv,axiom,
    ! [I: nat,J: nat,Xs: list_nat,Ys: list_nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ( upt @ I @ J )
          = ( append_nat @ Xs @ Ys ) )
        = ( ? [K2: nat] :
              ( ( ord_less_eq_nat @ I @ K2 )
              & ( ord_less_eq_nat @ K2 @ J )
              & ( ( upt @ I @ K2 )
                = Xs )
              & ( ( upt @ K2 @ J )
                = Ys ) ) ) ) ) ).

% upt_eq_append_conv
thf(fact_5412_upt__0,axiom,
    ! [I: nat] :
      ( ( upt @ I @ zero_zero_nat )
      = nil_nat ) ).

% upt_0
thf(fact_5413_upt__append,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( append_nat @ ( upt @ zero_zero_nat @ I ) @ ( upt @ I @ J ) )
        = ( upt @ zero_zero_nat @ J ) ) ) ).

% upt_append
thf(fact_5414_upt__add__eq__append,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( upt @ I @ ( plus_plus_nat @ J @ K ) )
        = ( append_nat @ ( upt @ I @ J ) @ ( upt @ J @ ( plus_plus_nat @ J @ K ) ) ) ) ) ).

% upt_add_eq_append
thf(fact_5415_butlast__upt,axiom,
    ! [M: nat,N: nat] :
      ( ( butlast_nat @ ( upt @ M @ N ) )
      = ( upt @ M @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ).

% butlast_upt
thf(fact_5416_atLeast__upt,axiom,
    ( set_ord_lessThan_nat
    = ( ^ [N3: nat] : ( set_nat2 @ ( upt @ zero_zero_nat @ N3 ) ) ) ) ).

% atLeast_upt
thf(fact_5417_map__add__upt,axiom,
    ! [N: nat,M: nat] :
      ( ( map_nat_nat
        @ ^ [I2: nat] : ( plus_plus_nat @ I2 @ N )
        @ ( upt @ zero_zero_nat @ M ) )
      = ( upt @ N @ ( plus_plus_nat @ M @ N ) ) ) ).

% map_add_upt
thf(fact_5418_sorted__upt,axiom,
    ! [M: nat,N: nat] : ( sorted_wrt_nat @ ord_less_eq_nat @ ( upt @ M @ N ) ) ).

% sorted_upt
thf(fact_5419_atMost__upto,axiom,
    ( set_ord_atMost_nat
    = ( ^ [N3: nat] : ( set_nat2 @ ( upt @ zero_zero_nat @ ( suc @ N3 ) ) ) ) ) ).

% atMost_upto
thf(fact_5420_upt__Suc__append,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( upt @ I @ ( suc @ J ) )
        = ( append_nat @ ( upt @ I @ J ) @ ( cons_nat @ J @ nil_nat ) ) ) ) ).

% upt_Suc_append
thf(fact_5421_upt__Suc,axiom,
    ! [I: nat,J: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
       => ( ( upt @ I @ ( suc @ J ) )
          = ( append_nat @ ( upt @ I @ J ) @ ( cons_nat @ J @ nil_nat ) ) ) )
      & ( ~ ( ord_less_eq_nat @ I @ J )
       => ( ( upt @ I @ ( suc @ J ) )
          = nil_nat ) ) ) ).

% upt_Suc
thf(fact_5422_upt__filter__extend,axiom,
    ! [U: nat,U3: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ U @ U3 )
     => ( ! [I3: nat] :
            ( ( ( ord_less_eq_nat @ U @ I3 )
              & ( ord_less_nat @ I3 @ U3 ) )
           => ~ ( P @ I3 ) )
       => ( ( filter_nat2 @ P @ ( upt @ zero_zero_nat @ U ) )
          = ( filter_nat2 @ P @ ( upt @ zero_zero_nat @ U3 ) ) ) ) ) ).

% upt_filter_extend
thf(fact_5423_map__decr__upt,axiom,
    ! [M: nat,N: nat] :
      ( ( map_nat_nat
        @ ^ [N3: nat] : ( minus_minus_nat @ N3 @ ( suc @ zero_zero_nat ) )
        @ ( upt @ ( suc @ M ) @ ( suc @ N ) ) )
      = ( upt @ M @ N ) ) ).

% map_decr_upt
thf(fact_5424_upt__eq__lel__conv,axiom,
    ! [L: nat,H: nat,Is1: list_nat,I: nat,Is2: list_nat] :
      ( ( ( upt @ L @ H )
        = ( append_nat @ Is1 @ ( cons_nat @ I @ Is2 ) ) )
      = ( ( Is1
          = ( upt @ L @ I ) )
        & ( Is2
          = ( upt @ ( suc @ I ) @ H ) )
        & ( ord_less_eq_nat @ L @ I )
        & ( ord_less_nat @ I @ H ) ) ) ).

% upt_eq_lel_conv
thf(fact_5425_upt__eq__Cons__conv,axiom,
    ! [I: nat,J: nat,X2: nat,Xs: list_nat] :
      ( ( ( upt @ I @ J )
        = ( cons_nat @ X2 @ Xs ) )
      = ( ( ord_less_nat @ I @ J )
        & ( I = X2 )
        & ( ( upt @ ( plus_plus_nat @ I @ one_one_nat ) @ J )
          = Xs ) ) ) ).

% upt_eq_Cons_conv
thf(fact_5426_sum__list__upt,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( groups4561878855575611511st_nat @ ( upt @ M @ N ) )
        = ( groups3542108847815614940at_nat
          @ ^ [X: nat] : X
          @ ( set_or4665077453230672383an_nat @ M @ N ) ) ) ) ).

% sum_list_upt
thf(fact_5427_card__length__sum__list__rec,axiom,
    ! [M: nat,N4: nat] :
      ( ( ord_less_eq_nat @ one_one_nat @ M )
     => ( ( finite_card_list_nat
          @ ( collect_list_nat
            @ ^ [L2: list_nat] :
                ( ( ( size_size_list_nat @ L2 )
                  = M )
                & ( ( groups4561878855575611511st_nat @ L2 )
                  = N4 ) ) ) )
        = ( plus_plus_nat
          @ ( finite_card_list_nat
            @ ( collect_list_nat
              @ ^ [L2: list_nat] :
                  ( ( ( size_size_list_nat @ L2 )
                    = ( minus_minus_nat @ M @ one_one_nat ) )
                  & ( ( groups4561878855575611511st_nat @ L2 )
                    = N4 ) ) ) )
          @ ( finite_card_list_nat
            @ ( collect_list_nat
              @ ^ [L2: list_nat] :
                  ( ( ( size_size_list_nat @ L2 )
                    = M )
                  & ( ( plus_plus_nat @ ( groups4561878855575611511st_nat @ L2 ) @ one_one_nat )
                    = N4 ) ) ) ) ) ) ) ).

% card_length_sum_list_rec
thf(fact_5428_card__length__sum__list,axiom,
    ! [M: nat,N4: nat] :
      ( ( finite_card_list_nat
        @ ( collect_list_nat
          @ ^ [L2: list_nat] :
              ( ( ( size_size_list_nat @ L2 )
                = M )
              & ( ( groups4561878855575611511st_nat @ L2 )
                = N4 ) ) ) )
      = ( binomial @ ( minus_minus_nat @ ( plus_plus_nat @ N4 @ M ) @ one_one_nat ) @ N4 ) ) ).

% card_length_sum_list
thf(fact_5429_floor__rat__def,axiom,
    ( archim3151403230148437115or_rat
    = ( ^ [X: rat] :
          ( the_int
          @ ^ [Z3: int] :
              ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ Z3 ) @ X )
              & ( ord_less_rat @ X @ ( ring_1_of_int_rat @ ( plus_plus_int @ Z3 @ one_one_int ) ) ) ) ) ) ) ).

% floor_rat_def
thf(fact_5430_uminus__int__def,axiom,
    ( uminus_uminus_int
    = ( map_fu3667384564859982768at_int @ rep_Integ @ abs_Integ
      @ ( produc2626176000494625587at_nat
        @ ^ [X: nat,Y4: nat] : ( product_Pair_nat_nat @ Y4 @ X ) ) ) ) ).

% uminus_int_def
thf(fact_5431_times__int__def,axiom,
    ( times_times_int
    = ( map_fu4960017516451851995nt_int @ rep_Integ @ ( map_fu3667384564859982768at_int @ rep_Integ @ abs_Integ )
      @ ( produc27273713700761075at_nat
        @ ^ [X: nat,Y4: nat] :
            ( produc2626176000494625587at_nat
            @ ^ [U2: nat,V3: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ X @ U2 ) @ ( times_times_nat @ Y4 @ V3 ) ) @ ( plus_plus_nat @ ( times_times_nat @ X @ V3 ) @ ( times_times_nat @ Y4 @ U2 ) ) ) ) ) ) ) ).

% times_int_def
thf(fact_5432_minus__int__def,axiom,
    ( minus_minus_int
    = ( map_fu4960017516451851995nt_int @ rep_Integ @ ( map_fu3667384564859982768at_int @ rep_Integ @ abs_Integ )
      @ ( produc27273713700761075at_nat
        @ ^ [X: nat,Y4: nat] :
            ( produc2626176000494625587at_nat
            @ ^ [U2: nat,V3: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X @ V3 ) @ ( plus_plus_nat @ Y4 @ U2 ) ) ) ) ) ) ).

% minus_int_def
thf(fact_5433_plus__int__def,axiom,
    ( plus_plus_int
    = ( map_fu4960017516451851995nt_int @ rep_Integ @ ( map_fu3667384564859982768at_int @ rep_Integ @ abs_Integ )
      @ ( produc27273713700761075at_nat
        @ ^ [X: nat,Y4: nat] :
            ( produc2626176000494625587at_nat
            @ ^ [U2: nat,V3: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X @ U2 ) @ ( plus_plus_nat @ Y4 @ V3 ) ) ) ) ) ) ).

% plus_int_def
thf(fact_5434_prod__encode__def,axiom,
    ( nat_prod_encode
    = ( produc6842872674320459806at_nat
      @ ^ [M2: nat,N3: nat] : ( plus_plus_nat @ ( nat_triangle @ ( plus_plus_nat @ M2 @ N3 ) ) @ M2 ) ) ) ).

% prod_encode_def
thf(fact_5435_le__prod__encode__1,axiom,
    ! [A: nat,B: nat] : ( ord_less_eq_nat @ A @ ( nat_prod_encode @ ( product_Pair_nat_nat @ A @ B ) ) ) ).

% le_prod_encode_1
thf(fact_5436_le__prod__encode__2,axiom,
    ! [B: nat,A: nat] : ( ord_less_eq_nat @ B @ ( nat_prod_encode @ ( product_Pair_nat_nat @ A @ B ) ) ) ).

% le_prod_encode_2
thf(fact_5437_prod__encode__prod__decode__aux,axiom,
    ! [K: nat,M: nat] :
      ( ( nat_prod_encode @ ( nat_prod_decode_aux @ K @ M ) )
      = ( plus_plus_nat @ ( nat_triangle @ K ) @ M ) ) ).

% prod_encode_prod_decode_aux
thf(fact_5438_list__encode_Oelims,axiom,
    ! [X2: list_nat,Y: nat] :
      ( ( ( nat_list_encode @ X2 )
        = Y )
     => ( ( ( X2 = nil_nat )
         => ( Y != zero_zero_nat ) )
       => ~ ! [X3: nat,Xs2: list_nat] :
              ( ( X2
                = ( cons_nat @ X3 @ Xs2 ) )
             => ( Y
               != ( suc @ ( nat_prod_encode @ ( product_Pair_nat_nat @ X3 @ ( nat_list_encode @ Xs2 ) ) ) ) ) ) ) ) ).

% list_encode.elims
thf(fact_5439_list__encode_Opelims,axiom,
    ! [X2: list_nat,Y: nat] :
      ( ( ( nat_list_encode @ X2 )
        = Y )
     => ( ( accp_list_nat @ nat_list_encode_rel @ X2 )
       => ( ( ( X2 = nil_nat )
           => ( ( Y = zero_zero_nat )
             => ~ ( accp_list_nat @ nat_list_encode_rel @ nil_nat ) ) )
         => ~ ! [X3: nat,Xs2: list_nat] :
                ( ( X2
                  = ( cons_nat @ X3 @ Xs2 ) )
               => ( ( Y
                    = ( suc @ ( nat_prod_encode @ ( product_Pair_nat_nat @ X3 @ ( nat_list_encode @ Xs2 ) ) ) ) )
                 => ~ ( accp_list_nat @ nat_list_encode_rel @ ( cons_nat @ X3 @ Xs2 ) ) ) ) ) ) ) ).

% list_encode.pelims
thf(fact_5440_list__encode_Osimps_I1_J,axiom,
    ( ( nat_list_encode @ nil_nat )
    = zero_zero_nat ) ).

% list_encode.simps(1)
thf(fact_5441_rat__floor__lemma,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_eq_rat @ ( ring_1_of_int_rat @ ( divide_divide_int @ A @ B ) ) @ ( fract @ A @ B ) )
      & ( ord_less_rat @ ( fract @ A @ B ) @ ( ring_1_of_int_rat @ ( plus_plus_int @ ( divide_divide_int @ A @ B ) @ one_one_int ) ) ) ) ).

% rat_floor_lemma
thf(fact_5442_less__rat,axiom,
    ! [B: int,D: int,A: int,C: int] :
      ( ( B != zero_zero_int )
     => ( ( D != zero_zero_int )
       => ( ( ord_less_rat @ ( fract @ A @ B ) @ ( fract @ C @ D ) )
          = ( ord_less_int @ ( times_times_int @ ( times_times_int @ A @ D ) @ ( times_times_int @ B @ D ) ) @ ( times_times_int @ ( times_times_int @ C @ B ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% less_rat
thf(fact_5443_le__rat,axiom,
    ! [B: int,D: int,A: int,C: int] :
      ( ( B != zero_zero_int )
     => ( ( D != zero_zero_int )
       => ( ( ord_less_eq_rat @ ( fract @ A @ B ) @ ( fract @ C @ D ) )
          = ( ord_less_eq_int @ ( times_times_int @ ( times_times_int @ A @ D ) @ ( times_times_int @ B @ D ) ) @ ( times_times_int @ ( times_times_int @ C @ B ) @ ( times_times_int @ B @ D ) ) ) ) ) ) ).

% le_rat
thf(fact_5444_add__rat,axiom,
    ! [B: int,D: int,A: int,C: int] :
      ( ( B != zero_zero_int )
     => ( ( D != zero_zero_int )
       => ( ( plus_plus_rat @ ( fract @ A @ B ) @ ( fract @ C @ D ) )
          = ( fract @ ( plus_plus_int @ ( times_times_int @ A @ D ) @ ( times_times_int @ C @ B ) ) @ ( times_times_int @ B @ D ) ) ) ) ) ).

% add_rat
thf(fact_5445_diff__rat,axiom,
    ! [B: int,D: int,A: int,C: int] :
      ( ( B != zero_zero_int )
     => ( ( D != zero_zero_int )
       => ( ( minus_minus_rat @ ( fract @ A @ B ) @ ( fract @ C @ D ) )
          = ( fract @ ( minus_minus_int @ ( times_times_int @ A @ D ) @ ( times_times_int @ C @ B ) ) @ ( times_times_int @ B @ D ) ) ) ) ) ).

% diff_rat
thf(fact_5446_eq__rat_I3_J,axiom,
    ! [A: int,C: int] :
      ( ( fract @ zero_zero_int @ A )
      = ( fract @ zero_zero_int @ C ) ) ).

% eq_rat(3)
thf(fact_5447_Rat__induct__pos,axiom,
    ! [P: rat > $o,Q2: rat] :
      ( ! [A3: int,B3: int] :
          ( ( ord_less_int @ zero_zero_int @ B3 )
         => ( P @ ( fract @ A3 @ B3 ) ) )
     => ( P @ Q2 ) ) ).

% Rat_induct_pos
thf(fact_5448_eq__rat_I2_J,axiom,
    ! [A: int] :
      ( ( fract @ A @ zero_zero_int )
      = ( fract @ zero_zero_int @ one_one_int ) ) ).

% eq_rat(2)
thf(fact_5449_mult__rat__cancel,axiom,
    ! [C: int,A: int,B: int] :
      ( ( C != zero_zero_int )
     => ( ( fract @ ( times_times_int @ C @ A ) @ ( times_times_int @ C @ B ) )
        = ( fract @ A @ B ) ) ) ).

% mult_rat_cancel
thf(fact_5450_eq__rat_I1_J,axiom,
    ! [B: int,D: int,A: int,C: int] :
      ( ( B != zero_zero_int )
     => ( ( D != zero_zero_int )
       => ( ( ( fract @ A @ B )
            = ( fract @ C @ D ) )
          = ( ( times_times_int @ A @ D )
            = ( times_times_int @ C @ B ) ) ) ) ) ).

% eq_rat(1)
thf(fact_5451_Fract__of__nat__eq,axiom,
    ! [K: nat] :
      ( ( fract @ ( semiri1314217659103216013at_int @ K ) @ one_one_int )
      = ( semiri681578069525770553at_rat @ K ) ) ).

% Fract_of_nat_eq
thf(fact_5452_rat__number__collapse_I1_J,axiom,
    ! [K: int] :
      ( ( fract @ zero_zero_int @ K )
      = zero_zero_rat ) ).

% rat_number_collapse(1)
thf(fact_5453_rat__number__collapse_I6_J,axiom,
    ! [K: int] :
      ( ( fract @ K @ zero_zero_int )
      = zero_zero_rat ) ).

% rat_number_collapse(6)
thf(fact_5454_One__rat__def,axiom,
    ( one_one_rat
    = ( fract @ one_one_int @ one_one_int ) ) ).

% One_rat_def
thf(fact_5455_Fract__of__int__eq,axiom,
    ! [K: int] :
      ( ( fract @ K @ one_one_int )
      = ( ring_1_of_int_rat @ K ) ) ).

% Fract_of_int_eq
thf(fact_5456_Zero__rat__def,axiom,
    ( zero_zero_rat
    = ( fract @ zero_zero_int @ one_one_int ) ) ).

% Zero_rat_def
thf(fact_5457_rat__number__expand_I3_J,axiom,
    ( numeral_numeral_rat
    = ( ^ [K2: num] : ( fract @ ( numeral_numeral_int @ K2 ) @ one_one_int ) ) ) ).

% rat_number_expand(3)
thf(fact_5458_rat__number__collapse_I3_J,axiom,
    ! [W2: num] :
      ( ( fract @ ( numeral_numeral_int @ W2 ) @ one_one_int )
      = ( numeral_numeral_rat @ W2 ) ) ).

% rat_number_collapse(3)
thf(fact_5459_zero__less__Fract__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_rat @ zero_zero_rat @ ( fract @ A @ B ) )
        = ( ord_less_int @ zero_zero_int @ A ) ) ) ).

% zero_less_Fract_iff
thf(fact_5460_Fract__less__zero__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_rat @ ( fract @ A @ B ) @ zero_zero_rat )
        = ( ord_less_int @ A @ zero_zero_int ) ) ) ).

% Fract_less_zero_iff
thf(fact_5461_Fract__less__one__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_rat @ ( fract @ A @ B ) @ one_one_rat )
        = ( ord_less_int @ A @ B ) ) ) ).

% Fract_less_one_iff
thf(fact_5462_one__less__Fract__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_rat @ one_one_rat @ ( fract @ A @ B ) )
        = ( ord_less_int @ B @ A ) ) ) ).

% one_less_Fract_iff
thf(fact_5463_rat__number__collapse_I5_J,axiom,
    ( ( fract @ ( uminus_uminus_int @ one_one_int ) @ one_one_int )
    = ( uminus_uminus_rat @ one_one_rat ) ) ).

% rat_number_collapse(5)
thf(fact_5464_Fract__add__one,axiom,
    ! [N: int,M: int] :
      ( ( N != zero_zero_int )
     => ( ( fract @ ( plus_plus_int @ M @ N ) @ N )
        = ( plus_plus_rat @ ( fract @ M @ N ) @ one_one_rat ) ) ) ).

% Fract_add_one
thf(fact_5465_Fract__le__zero__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_eq_rat @ ( fract @ A @ B ) @ zero_zero_rat )
        = ( ord_less_eq_int @ A @ zero_zero_int ) ) ) ).

% Fract_le_zero_iff
thf(fact_5466_zero__le__Fract__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_eq_rat @ zero_zero_rat @ ( fract @ A @ B ) )
        = ( ord_less_eq_int @ zero_zero_int @ A ) ) ) ).

% zero_le_Fract_iff
thf(fact_5467_Fract__le__one__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_eq_rat @ ( fract @ A @ B ) @ one_one_rat )
        = ( ord_less_eq_int @ A @ B ) ) ) ).

% Fract_le_one_iff
thf(fact_5468_one__le__Fract__iff,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ( ord_less_eq_rat @ one_one_rat @ ( fract @ A @ B ) )
        = ( ord_less_eq_int @ B @ A ) ) ) ).

% one_le_Fract_iff
thf(fact_5469_rat__number__expand_I5_J,axiom,
    ! [K: num] :
      ( ( uminus_uminus_rat @ ( numeral_numeral_rat @ K ) )
      = ( fract @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) @ one_one_int ) ) ).

% rat_number_expand(5)
thf(fact_5470_rat__number__collapse_I4_J,axiom,
    ! [W2: num] :
      ( ( fract @ ( uminus_uminus_int @ ( numeral_numeral_int @ W2 ) ) @ one_one_int )
      = ( uminus_uminus_rat @ ( numeral_numeral_rat @ W2 ) ) ) ).

% rat_number_collapse(4)
thf(fact_5471_pow_Osimps_I3_J,axiom,
    ! [X2: num,Y: num] :
      ( ( pow @ X2 @ ( bit1 @ Y ) )
      = ( times_times_num @ ( sqr @ ( pow @ X2 @ Y ) ) @ X2 ) ) ).

% pow.simps(3)
thf(fact_5472_of__nat__eq__id,axiom,
    semiri1316708129612266289at_nat = id_nat ).

% of_nat_eq_id
thf(fact_5473_sqr_Osimps_I2_J,axiom,
    ! [N: num] :
      ( ( sqr @ ( bit0 @ N ) )
      = ( bit0 @ ( bit0 @ ( sqr @ N ) ) ) ) ).

% sqr.simps(2)
thf(fact_5474_sqr_Osimps_I1_J,axiom,
    ( ( sqr @ one )
    = one ) ).

% sqr.simps(1)
thf(fact_5475_less__int__def,axiom,
    ( ord_less_int
    = ( map_fu434086159418415080_int_o @ rep_Integ @ ( map_fu4826362097070443709at_o_o @ rep_Integ @ id_o )
      @ ( produc8739625826339149834_nat_o
        @ ^ [X: nat,Y4: nat] :
            ( produc6081775807080527818_nat_o
            @ ^ [U2: nat,V3: nat] : ( ord_less_nat @ ( plus_plus_nat @ X @ V3 ) @ ( plus_plus_nat @ U2 @ Y4 ) ) ) ) ) ) ).

% less_int_def
thf(fact_5476_less__eq__int__def,axiom,
    ( ord_less_eq_int
    = ( map_fu434086159418415080_int_o @ rep_Integ @ ( map_fu4826362097070443709at_o_o @ rep_Integ @ id_o )
      @ ( produc8739625826339149834_nat_o
        @ ^ [X: nat,Y4: nat] :
            ( produc6081775807080527818_nat_o
            @ ^ [U2: nat,V3: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ X @ V3 ) @ ( plus_plus_nat @ U2 @ Y4 ) ) ) ) ) ) ).

% less_eq_int_def
thf(fact_5477_sqr__conv__mult,axiom,
    ( sqr
    = ( ^ [X: num] : ( times_times_num @ X @ X ) ) ) ).

% sqr_conv_mult
thf(fact_5478_nat__def,axiom,
    ( nat2
    = ( map_fu2345160673673942751at_nat @ rep_Integ @ id_nat @ ( produc6842872674320459806at_nat @ minus_minus_nat ) ) ) ).

% nat_def
thf(fact_5479_pow_Osimps_I2_J,axiom,
    ! [X2: num,Y: num] :
      ( ( pow @ X2 @ ( bit0 @ Y ) )
      = ( sqr @ ( pow @ X2 @ Y ) ) ) ).

% pow.simps(2)
thf(fact_5480_sqr_Osimps_I3_J,axiom,
    ! [N: num] :
      ( ( sqr @ ( bit1 @ N ) )
      = ( bit1 @ ( bit0 @ ( plus_plus_num @ ( sqr @ N ) @ N ) ) ) ) ).

% sqr.simps(3)
thf(fact_5481_positive__rat,axiom,
    ! [A: int,B: int] :
      ( ( positive @ ( fract @ A @ B ) )
      = ( ord_less_int @ zero_zero_int @ ( times_times_int @ A @ B ) ) ) ).

% positive_rat
thf(fact_5482_less__eq__integer__def,axiom,
    ( ord_le3102999989581377725nteger
    = ( map_fu2496120808607739376eger_o @ code_int_of_integer @ ( map_fu6957801986076833569nt_o_o @ code_int_of_integer @ id_o ) @ ord_less_eq_int ) ) ).

% less_eq_integer_def
thf(fact_5483_less__integer__def,axiom,
    ( ord_le6747313008572928689nteger
    = ( map_fu2496120808607739376eger_o @ code_int_of_integer @ ( map_fu6957801986076833569nt_o_o @ code_int_of_integer @ id_o ) @ ord_less_int ) ) ).

% less_integer_def
thf(fact_5484_plus__integer__def,axiom,
    ( plus_p5714425477246183910nteger
    = ( map_fu8272188784021352819nteger @ code_int_of_integer @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ plus_plus_int ) ) ).

% plus_integer_def
thf(fact_5485_times__integer__def,axiom,
    ( times_3573771949741848930nteger
    = ( map_fu8272188784021352819nteger @ code_int_of_integer @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ times_times_int ) ) ).

% times_integer_def
thf(fact_5486_minus__integer__def,axiom,
    ( minus_8373710615458151222nteger
    = ( map_fu8272188784021352819nteger @ code_int_of_integer @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ minus_minus_int ) ) ).

% minus_integer_def
thf(fact_5487_divide__integer__def,axiom,
    ( divide6298287555418463151nteger
    = ( map_fu8272188784021352819nteger @ code_int_of_integer @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ divide_divide_int ) ) ).

% divide_integer_def
thf(fact_5488_modulo__integer__def,axiom,
    ( modulo364778990260209775nteger
    = ( map_fu8272188784021352819nteger @ code_int_of_integer @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ modulo_modulo_int ) ) ).

% modulo_integer_def
thf(fact_5489_positive__add,axiom,
    ! [X2: rat,Y: rat] :
      ( ( positive @ X2 )
     => ( ( positive @ Y )
       => ( positive @ ( plus_plus_rat @ X2 @ Y ) ) ) ) ).

% positive_add
thf(fact_5490_and__integer__def,axiom,
    ( bit_se3949692690581998587nteger
    = ( map_fu8272188784021352819nteger @ code_int_of_integer @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ bit_se725231765392027082nd_int ) ) ).

% and_integer_def
thf(fact_5491_or__integer__def,axiom,
    ( bit_se1080825931792720795nteger
    = ( map_fu8272188784021352819nteger @ code_int_of_integer @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ bit_se1409905431419307370or_int ) ) ).

% or_integer_def
thf(fact_5492_take__bit__integer__def,axiom,
    ( bit_se1745604003318907178nteger
    = ( map_fu8224359078269604234nteger @ id_nat @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ bit_se2923211474154528505it_int ) ) ).

% take_bit_integer_def
thf(fact_5493_xor__integer__def,axiom,
    ( bit_se3222712562003087583nteger
    = ( map_fu8272188784021352819nteger @ code_int_of_integer @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ bit_se6526347334894502574or_int ) ) ).

% xor_integer_def
thf(fact_5494_drop__bit__integer__def,axiom,
    ( bit_se3928097537394005634nteger
    = ( map_fu8224359078269604234nteger @ id_nat @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ bit_se8568078237143864401it_int ) ) ).

% drop_bit_integer_def
thf(fact_5495_push__bit__integer__def,axiom,
    ( bit_se7788150548672797655nteger
    = ( map_fu8224359078269604234nteger @ id_nat @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ bit_se545348938243370406it_int ) ) ).

% push_bit_integer_def
thf(fact_5496_unset__bit__integer__def,axiom,
    ( bit_se8260200283734997820nteger
    = ( map_fu8224359078269604234nteger @ id_nat @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ bit_se4203085406695923979it_int ) ) ).

% unset_bit_integer_def
thf(fact_5497_set__bit__integer__def,axiom,
    ( bit_se2793503036327961859nteger
    = ( map_fu8224359078269604234nteger @ id_nat @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ bit_se7879613467334960850it_int ) ) ).

% set_bit_integer_def
thf(fact_5498_flip__bit__integer__def,axiom,
    ( bit_se1345352211410354436nteger
    = ( map_fu8224359078269604234nteger @ id_nat @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ bit_se2159334234014336723it_int ) ) ).

% flip_bit_integer_def
thf(fact_5499_nat__of__integer__def,axiom,
    ( code_nat_of_integer
    = ( map_fu6539832666145259331at_nat @ code_int_of_integer @ id_nat @ nat2 ) ) ).

% nat_of_integer_def
thf(fact_5500_bit__integer__def,axiom,
    ( bit_se9216721137139052372nteger
    = ( map_fu186220595405829473_nat_o @ code_int_of_integer @ id_nat_o @ bit_se1146084159140164899it_int ) ) ).

% bit_integer_def
thf(fact_5501_uminus__integer__def,axiom,
    ( uminus1351360451143612070nteger
    = ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int @ uminus_uminus_int ) ) ).

% uminus_integer_def
thf(fact_5502_abs__integer__def,axiom,
    ( abs_abs_Code_integer
    = ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int @ abs_abs_int ) ) ).

% abs_integer_def
thf(fact_5503_mask__integer__def,axiom,
    ( bit_se2119862282449309892nteger
    = ( map_fu6290471996055670595nteger @ id_nat @ code_integer_of_int @ bit_se2000444600071755411sk_int ) ) ).

% mask_integer_def
thf(fact_5504_sgn__integer__def,axiom,
    ( sgn_sgn_Code_integer
    = ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int @ sgn_sgn_int ) ) ).

% sgn_integer_def
thf(fact_5505_not__integer__def,axiom,
    ( bit_ri7632146776885996613nteger
    = ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int @ bit_ri7919022796975470100ot_int ) ) ).

% not_integer_def
thf(fact_5506_num__of__integer__def,axiom,
    ( code_num_of_integer
    = ( map_fu1227494855608507351um_num @ code_int_of_integer @ id_num @ ( comp_nat_num_int @ num_of_nat @ nat2 ) ) ) ).

% num_of_integer_def
thf(fact_5507_min__0R,axiom,
    ! [N: nat] :
      ( ( ord_min_nat @ N @ zero_zero_nat )
      = zero_zero_nat ) ).

% min_0R
thf(fact_5508_min__0L,axiom,
    ! [N: nat] :
      ( ( ord_min_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% min_0L
thf(fact_5509_min__Suc__Suc,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_min_nat @ ( suc @ M ) @ ( suc @ N ) )
      = ( suc @ ( ord_min_nat @ M @ N ) ) ) ).

% min_Suc_Suc
thf(fact_5510_min__Suc__gt_I2_J,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_min_nat @ B @ ( suc @ A ) )
        = ( suc @ A ) ) ) ).

% min_Suc_gt(2)
thf(fact_5511_min__Suc__gt_I1_J,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_min_nat @ ( suc @ A ) @ B )
        = ( suc @ A ) ) ) ).

% min_Suc_gt(1)
thf(fact_5512_min__numeral__Suc,axiom,
    ! [K: num,N: nat] :
      ( ( ord_min_nat @ ( numeral_numeral_nat @ K ) @ ( suc @ N ) )
      = ( suc @ ( ord_min_nat @ ( pred_numeral @ K ) @ N ) ) ) ).

% min_numeral_Suc
thf(fact_5513_min__Suc__numeral,axiom,
    ! [N: nat,K: num] :
      ( ( ord_min_nat @ ( suc @ N ) @ ( numeral_numeral_nat @ K ) )
      = ( suc @ ( ord_min_nat @ N @ ( pred_numeral @ K ) ) ) ) ).

% min_Suc_numeral
thf(fact_5514_nat__mult__min__left,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( times_times_nat @ ( ord_min_nat @ M @ N ) @ Q2 )
      = ( ord_min_nat @ ( times_times_nat @ M @ Q2 ) @ ( times_times_nat @ N @ Q2 ) ) ) ).

% nat_mult_min_left
thf(fact_5515_nat__mult__min__right,axiom,
    ! [M: nat,N: nat,Q2: nat] :
      ( ( times_times_nat @ M @ ( ord_min_nat @ N @ Q2 ) )
      = ( ord_min_nat @ ( times_times_nat @ M @ N ) @ ( times_times_nat @ M @ Q2 ) ) ) ).

% nat_mult_min_right
thf(fact_5516_inf__nat__def,axiom,
    inf_inf_nat = ord_min_nat ).

% inf_nat_def
thf(fact_5517_min__diff,axiom,
    ! [M: nat,I: nat,N: nat] :
      ( ( ord_min_nat @ ( minus_minus_nat @ M @ I ) @ ( minus_minus_nat @ N @ I ) )
      = ( minus_minus_nat @ ( ord_min_nat @ M @ N ) @ I ) ) ).

% min_diff
thf(fact_5518_min__Suc1,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_min_nat @ ( suc @ N ) @ M )
      = ( case_nat_nat @ zero_zero_nat
        @ ^ [M7: nat] : ( suc @ ( ord_min_nat @ N @ M7 ) )
        @ M ) ) ).

% min_Suc1
thf(fact_5519_min__Suc2,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_min_nat @ M @ ( suc @ N ) )
      = ( case_nat_nat @ zero_zero_nat
        @ ^ [M7: nat] : ( suc @ ( ord_min_nat @ M7 @ N ) )
        @ M ) ) ).

% min_Suc2
thf(fact_5520_integer__of__nat__def,axiom,
    ( code_integer_of_nat
    = ( map_fu6290471996055670595nteger @ id_nat @ code_integer_of_int @ semiri1314217659103216013at_int ) ) ).

% integer_of_nat_def
thf(fact_5521_nat__of__integer__integer__of__nat,axiom,
    ! [N: nat] :
      ( ( code_nat_of_integer @ ( code_integer_of_nat @ N ) )
      = N ) ).

% nat_of_integer_integer_of_nat
thf(fact_5522_fst__divmod__integer,axiom,
    ! [K: code_integer,L: code_integer] :
      ( ( produc8508995932063986495nteger @ ( code_divmod_integer @ K @ L ) )
      = ( divide6298287555418463151nteger @ K @ L ) ) ).

% fst_divmod_integer
thf(fact_5523_int__of__integer__min,axiom,
    ! [K: code_integer,L: code_integer] :
      ( ( code_int_of_integer @ ( ord_min_Code_integer @ K @ L ) )
      = ( ord_min_int @ ( code_int_of_integer @ K ) @ ( code_int_of_integer @ L ) ) ) ).

% int_of_integer_min
thf(fact_5524_int__of__integer__integer__of__nat,axiom,
    ! [N: nat] :
      ( ( code_int_of_integer @ ( code_integer_of_nat @ N ) )
      = ( semiri1314217659103216013at_int @ N ) ) ).

% int_of_integer_integer_of_nat
thf(fact_5525_integer__of__nat_Orep__eq,axiom,
    ! [X2: nat] :
      ( ( code_int_of_integer @ ( code_integer_of_nat @ X2 ) )
      = ( semiri1314217659103216013at_int @ X2 ) ) ).

% integer_of_nat.rep_eq
thf(fact_5526_fst__divmod__abs,axiom,
    ! [K: code_integer,L: code_integer] :
      ( ( produc8508995932063986495nteger @ ( code_divmod_abs @ K @ L ) )
      = ( divide6298287555418463151nteger @ ( abs_abs_Code_integer @ K ) @ ( abs_abs_Code_integer @ L ) ) ) ).

% fst_divmod_abs
thf(fact_5527_Suc__0__div__numeral,axiom,
    ! [K: num] :
      ( ( divide_divide_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ K ) )
      = ( product_fst_nat_nat @ ( unique5055182867167087721od_nat @ one @ K ) ) ) ).

% Suc_0_div_numeral
thf(fact_5528_inf__int__def,axiom,
    inf_inf_int = ord_min_int ).

% inf_int_def
thf(fact_5529_integer__of__nat__eq__of__nat,axiom,
    code_integer_of_nat = semiri4939895301339042750nteger ).

% integer_of_nat_eq_of_nat
thf(fact_5530_integer__of__nat__0,axiom,
    ( ( code_integer_of_nat @ zero_zero_nat )
    = zero_z3403309356797280102nteger ) ).

% integer_of_nat_0
thf(fact_5531_integer__of__nat_Oabs__eq,axiom,
    ( code_integer_of_nat
    = ( ^ [X: nat] : ( code_integer_of_int @ ( semiri1314217659103216013at_int @ X ) ) ) ) ).

% integer_of_nat.abs_eq
thf(fact_5532_integer__of__nat__numeral,axiom,
    ! [N: num] :
      ( ( code_integer_of_nat @ ( numeral_numeral_nat @ N ) )
      = ( numera6620942414471956472nteger @ N ) ) ).

% integer_of_nat_numeral
thf(fact_5533_integer__of__nat__1,axiom,
    ( ( code_integer_of_nat @ one_one_nat )
    = one_one_Code_integer ) ).

% integer_of_nat_1
thf(fact_5534_rat__sgn__code,axiom,
    ! [P3: rat] :
      ( ( quotient_of @ ( sgn_sgn_rat @ P3 ) )
      = ( product_Pair_int_int @ ( sgn_sgn_int @ ( product_fst_int_int @ ( quotient_of @ P3 ) ) ) @ one_one_int ) ) ).

% rat_sgn_code
thf(fact_5535_bezw_Oelims,axiom,
    ! [X2: nat,Xa: nat,Y: product_prod_int_int] :
      ( ( ( bezw @ X2 @ Xa )
        = Y )
     => ( ( ( Xa = zero_zero_nat )
         => ( Y
            = ( product_Pair_int_int @ one_one_int @ zero_zero_int ) ) )
        & ( ( Xa != zero_zero_nat )
         => ( Y
            = ( product_Pair_int_int @ ( product_snd_int_int @ ( bezw @ Xa @ ( modulo_modulo_nat @ X2 @ Xa ) ) ) @ ( minus_minus_int @ ( product_fst_int_int @ ( bezw @ Xa @ ( modulo_modulo_nat @ X2 @ Xa ) ) ) @ ( times_times_int @ ( product_snd_int_int @ ( bezw @ Xa @ ( modulo_modulo_nat @ X2 @ Xa ) ) ) @ ( semiri1314217659103216013at_int @ ( divide_divide_nat @ X2 @ Xa ) ) ) ) ) ) ) ) ) ).

% bezw.elims
thf(fact_5536_bezw_Osimps,axiom,
    ( bezw
    = ( ^ [X: nat,Y4: nat] : ( if_Pro3027730157355071871nt_int @ ( Y4 = zero_zero_nat ) @ ( product_Pair_int_int @ one_one_int @ zero_zero_int ) @ ( product_Pair_int_int @ ( product_snd_int_int @ ( bezw @ Y4 @ ( modulo_modulo_nat @ X @ Y4 ) ) ) @ ( minus_minus_int @ ( product_fst_int_int @ ( bezw @ Y4 @ ( modulo_modulo_nat @ X @ Y4 ) ) ) @ ( times_times_int @ ( product_snd_int_int @ ( bezw @ Y4 @ ( modulo_modulo_nat @ X @ Y4 ) ) ) @ ( semiri1314217659103216013at_int @ ( divide_divide_nat @ X @ Y4 ) ) ) ) ) ) ) ) ).

% bezw.simps
thf(fact_5537_quotient__of__denom__pos_H,axiom,
    ! [R: rat] : ( ord_less_int @ zero_zero_int @ ( product_snd_int_int @ ( quotient_of @ R ) ) ) ).

% quotient_of_denom_pos'
thf(fact_5538_bezw__non__0,axiom,
    ! [Y: nat,X2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ Y )
     => ( ( bezw @ X2 @ Y )
        = ( product_Pair_int_int @ ( product_snd_int_int @ ( bezw @ Y @ ( modulo_modulo_nat @ X2 @ Y ) ) ) @ ( minus_minus_int @ ( product_fst_int_int @ ( bezw @ Y @ ( modulo_modulo_nat @ X2 @ Y ) ) ) @ ( times_times_int @ ( product_snd_int_int @ ( bezw @ Y @ ( modulo_modulo_nat @ X2 @ Y ) ) ) @ ( semiri1314217659103216013at_int @ ( divide_divide_nat @ X2 @ Y ) ) ) ) ) ) ) ).

% bezw_non_0
thf(fact_5539_minus__one__mod__numeral,axiom,
    ! [N: num] :
      ( ( modulo_modulo_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ N ) )
      = ( adjust_mod @ ( numeral_numeral_int @ N ) @ ( product_snd_int_int @ ( unique5052692396658037445od_int @ one @ N ) ) ) ) ).

% minus_one_mod_numeral
thf(fact_5540_one__mod__minus__numeral,axiom,
    ! [N: num] :
      ( ( modulo_modulo_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( uminus_uminus_int @ ( adjust_mod @ ( numeral_numeral_int @ N ) @ ( product_snd_int_int @ ( unique5052692396658037445od_int @ one @ N ) ) ) ) ) ).

% one_mod_minus_numeral
thf(fact_5541_snd__divmod__integer,axiom,
    ! [K: code_integer,L: code_integer] :
      ( ( produc6174133586879617921nteger @ ( code_divmod_integer @ K @ L ) )
      = ( modulo364778990260209775nteger @ K @ L ) ) ).

% snd_divmod_integer
thf(fact_5542_snd__divmod__abs,axiom,
    ! [K: code_integer,L: code_integer] :
      ( ( produc6174133586879617921nteger @ ( code_divmod_abs @ K @ L ) )
      = ( modulo364778990260209775nteger @ ( abs_abs_Code_integer @ K ) @ ( abs_abs_Code_integer @ L ) ) ) ).

% snd_divmod_abs
thf(fact_5543_Suc__0__mod__numeral,axiom,
    ! [K: num] :
      ( ( modulo_modulo_nat @ ( suc @ zero_zero_nat ) @ ( numeral_numeral_nat @ K ) )
      = ( product_snd_nat_nat @ ( unique5055182867167087721od_nat @ one @ K ) ) ) ).

% Suc_0_mod_numeral
thf(fact_5544_Divides_Oadjust__mod__def,axiom,
    ( adjust_mod
    = ( ^ [L2: int,R2: int] : ( if_int @ ( R2 = zero_zero_int ) @ zero_zero_int @ ( minus_minus_int @ L2 @ R2 ) ) ) ) ).

% Divides.adjust_mod_def
thf(fact_5545_positive__def,axiom,
    ( positive
    = ( map_fu898904425404107465nt_o_o @ rep_Rat @ id_o
      @ ^ [X: product_prod_int_int] : ( ord_less_int @ zero_zero_int @ ( times_times_int @ ( product_fst_int_int @ X ) @ ( product_snd_int_int @ X ) ) ) ) ) ).

% positive_def
thf(fact_5546_bezw_Opelims,axiom,
    ! [X2: nat,Xa: nat,Y: product_prod_int_int] :
      ( ( ( bezw @ X2 @ Xa )
        = Y )
     => ( ( accp_P4275260045618599050at_nat @ bezw_rel @ ( product_Pair_nat_nat @ X2 @ Xa ) )
       => ~ ( ( ( ( Xa = zero_zero_nat )
               => ( Y
                  = ( product_Pair_int_int @ one_one_int @ zero_zero_int ) ) )
              & ( ( Xa != zero_zero_nat )
               => ( Y
                  = ( product_Pair_int_int @ ( product_snd_int_int @ ( bezw @ Xa @ ( modulo_modulo_nat @ X2 @ Xa ) ) ) @ ( minus_minus_int @ ( product_fst_int_int @ ( bezw @ Xa @ ( modulo_modulo_nat @ X2 @ Xa ) ) ) @ ( times_times_int @ ( product_snd_int_int @ ( bezw @ Xa @ ( modulo_modulo_nat @ X2 @ Xa ) ) ) @ ( semiri1314217659103216013at_int @ ( divide_divide_nat @ X2 @ Xa ) ) ) ) ) ) ) )
           => ~ ( accp_P4275260045618599050at_nat @ bezw_rel @ ( product_Pair_nat_nat @ X2 @ Xa ) ) ) ) ) ).

% bezw.pelims
thf(fact_5547_positive_Orep__eq,axiom,
    ( positive
    = ( ^ [X: rat] : ( ord_less_int @ zero_zero_int @ ( times_times_int @ ( product_fst_int_int @ ( rep_Rat @ X ) ) @ ( product_snd_int_int @ ( rep_Rat @ X ) ) ) ) ) ) ).

% positive.rep_eq
thf(fact_5548_prod__decode__aux_Opelims,axiom,
    ! [X2: nat,Xa: nat,Y: product_prod_nat_nat] :
      ( ( ( nat_prod_decode_aux @ X2 @ Xa )
        = Y )
     => ( ( accp_P4275260045618599050at_nat @ nat_pr5047031295181774490ux_rel @ ( product_Pair_nat_nat @ X2 @ Xa ) )
       => ~ ( ( ( ( ord_less_eq_nat @ Xa @ X2 )
               => ( Y
                  = ( product_Pair_nat_nat @ Xa @ ( minus_minus_nat @ X2 @ Xa ) ) ) )
              & ( ~ ( ord_less_eq_nat @ Xa @ X2 )
               => ( Y
                  = ( nat_prod_decode_aux @ ( suc @ X2 ) @ ( minus_minus_nat @ Xa @ ( suc @ X2 ) ) ) ) ) )
           => ~ ( accp_P4275260045618599050at_nat @ nat_pr5047031295181774490ux_rel @ ( product_Pair_nat_nat @ X2 @ Xa ) ) ) ) ) ).

% prod_decode_aux.pelims
thf(fact_5549_plus__rat__def,axiom,
    ( plus_plus_rat
    = ( map_fu4333342158222067775at_rat @ rep_Rat @ ( map_fu5673905371560938248nt_rat @ rep_Rat @ abs_Rat )
      @ ^ [X: product_prod_int_int,Y4: product_prod_int_int] : ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ ( product_fst_int_int @ X ) @ ( product_snd_int_int @ Y4 ) ) @ ( times_times_int @ ( product_fst_int_int @ Y4 ) @ ( product_snd_int_int @ X ) ) ) @ ( times_times_int @ ( product_snd_int_int @ X ) @ ( product_snd_int_int @ Y4 ) ) ) ) ) ).

% plus_rat_def
thf(fact_5550_inverse__rat__def,axiom,
    ( inverse_inverse_rat
    = ( map_fu5673905371560938248nt_rat @ rep_Rat @ abs_Rat
      @ ^ [X: product_prod_int_int] :
          ( if_Pro3027730157355071871nt_int
          @ ( ( product_fst_int_int @ X )
            = zero_zero_int )
          @ ( product_Pair_int_int @ zero_zero_int @ one_one_int )
          @ ( product_Pair_int_int @ ( product_snd_int_int @ X ) @ ( product_fst_int_int @ X ) ) ) ) ) ).

% inverse_rat_def
thf(fact_5551_one__rat__def,axiom,
    ( one_one_rat
    = ( abs_Rat @ ( product_Pair_int_int @ one_one_int @ one_one_int ) ) ) ).

% one_rat_def
thf(fact_5552_Fract_Oabs__eq,axiom,
    ( fract
    = ( ^ [Xa4: int,X: int] : ( abs_Rat @ ( if_Pro3027730157355071871nt_int @ ( X = zero_zero_int ) @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ ( product_Pair_int_int @ Xa4 @ X ) ) ) ) ) ).

% Fract.abs_eq
thf(fact_5553_zero__rat__def,axiom,
    ( zero_zero_rat
    = ( abs_Rat @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) ) ) ).

% zero_rat_def
thf(fact_5554_Fract__def,axiom,
    ( fract
    = ( map_fu7831380289885515383nt_rat @ id_int @ ( map_fu3424225382358772769nt_rat @ id_int @ abs_Rat )
      @ ^ [A2: int,B2: int] : ( if_Pro3027730157355071871nt_int @ ( B2 = zero_zero_int ) @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ ( product_Pair_int_int @ A2 @ B2 ) ) ) ) ).

% Fract_def
thf(fact_5555_uminus__rat__def,axiom,
    ( uminus_uminus_rat
    = ( map_fu5673905371560938248nt_rat @ rep_Rat @ abs_Rat
      @ ^ [X: product_prod_int_int] : ( product_Pair_int_int @ ( uminus_uminus_int @ ( product_fst_int_int @ X ) ) @ ( product_snd_int_int @ X ) ) ) ) ).

% uminus_rat_def
thf(fact_5556_times__rat__def,axiom,
    ( times_times_rat
    = ( map_fu4333342158222067775at_rat @ rep_Rat @ ( map_fu5673905371560938248nt_rat @ rep_Rat @ abs_Rat )
      @ ^ [X: product_prod_int_int,Y4: product_prod_int_int] : ( product_Pair_int_int @ ( times_times_int @ ( product_fst_int_int @ X ) @ ( product_fst_int_int @ Y4 ) ) @ ( times_times_int @ ( product_snd_int_int @ X ) @ ( product_snd_int_int @ Y4 ) ) ) ) ) ).

% times_rat_def
thf(fact_5557_normalize__def,axiom,
    ( normalize
    = ( ^ [P6: product_prod_int_int] :
          ( if_Pro3027730157355071871nt_int @ ( ord_less_int @ zero_zero_int @ ( product_snd_int_int @ P6 ) ) @ ( product_Pair_int_int @ ( divide_divide_int @ ( product_fst_int_int @ P6 ) @ ( gcd_gcd_int @ ( product_fst_int_int @ P6 ) @ ( product_snd_int_int @ P6 ) ) ) @ ( divide_divide_int @ ( product_snd_int_int @ P6 ) @ ( gcd_gcd_int @ ( product_fst_int_int @ P6 ) @ ( product_snd_int_int @ P6 ) ) ) )
          @ ( if_Pro3027730157355071871nt_int
            @ ( ( product_snd_int_int @ P6 )
              = zero_zero_int )
            @ ( product_Pair_int_int @ zero_zero_int @ one_one_int )
            @ ( product_Pair_int_int @ ( divide_divide_int @ ( product_fst_int_int @ P6 ) @ ( uminus_uminus_int @ ( gcd_gcd_int @ ( product_fst_int_int @ P6 ) @ ( product_snd_int_int @ P6 ) ) ) ) @ ( divide_divide_int @ ( product_snd_int_int @ P6 ) @ ( uminus_uminus_int @ ( gcd_gcd_int @ ( product_fst_int_int @ P6 ) @ ( product_snd_int_int @ P6 ) ) ) ) ) ) ) ) ) ).

% normalize_def
thf(fact_5558_of__int__eq__id,axiom,
    ring_1_of_int_int = id_int ).

% of_int_eq_id
thf(fact_5559_gcd__1__int,axiom,
    ! [M: int] :
      ( ( gcd_gcd_int @ M @ one_one_int )
      = one_one_int ) ).

% gcd_1_int
thf(fact_5560_gcd__neg1__int,axiom,
    ! [X2: int,Y: int] :
      ( ( gcd_gcd_int @ ( uminus_uminus_int @ X2 ) @ Y )
      = ( gcd_gcd_int @ X2 @ Y ) ) ).

% gcd_neg1_int
thf(fact_5561_gcd__neg2__int,axiom,
    ! [X2: int,Y: int] :
      ( ( gcd_gcd_int @ X2 @ ( uminus_uminus_int @ Y ) )
      = ( gcd_gcd_int @ X2 @ Y ) ) ).

% gcd_neg2_int
thf(fact_5562_gcd__abs2__int,axiom,
    ! [X2: int,Y: int] :
      ( ( gcd_gcd_int @ X2 @ ( abs_abs_int @ Y ) )
      = ( gcd_gcd_int @ X2 @ Y ) ) ).

% gcd_abs2_int
thf(fact_5563_gcd__abs1__int,axiom,
    ! [X2: int,Y: int] :
      ( ( gcd_gcd_int @ ( abs_abs_int @ X2 ) @ Y )
      = ( gcd_gcd_int @ X2 @ Y ) ) ).

% gcd_abs1_int
thf(fact_5564_abs__gcd__int,axiom,
    ! [X2: int,Y: int] :
      ( ( abs_abs_int @ ( gcd_gcd_int @ X2 @ Y ) )
      = ( gcd_gcd_int @ X2 @ Y ) ) ).

% abs_gcd_int
thf(fact_5565_gcd__pos__int,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_int @ zero_zero_int @ ( gcd_gcd_int @ M @ N ) )
      = ( ( M != zero_zero_int )
        | ( N != zero_zero_int ) ) ) ).

% gcd_pos_int
thf(fact_5566_gcd__neg__numeral__2__int,axiom,
    ! [X2: int,N: num] :
      ( ( gcd_gcd_int @ X2 @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( gcd_gcd_int @ X2 @ ( numeral_numeral_int @ N ) ) ) ).

% gcd_neg_numeral_2_int
thf(fact_5567_gcd__neg__numeral__1__int,axiom,
    ! [N: num,X2: int] :
      ( ( gcd_gcd_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) @ X2 )
      = ( gcd_gcd_int @ ( numeral_numeral_int @ N ) @ X2 ) ) ).

% gcd_neg_numeral_1_int
thf(fact_5568_gcd__0__int,axiom,
    ! [X2: int] :
      ( ( gcd_gcd_int @ X2 @ zero_zero_int )
      = ( abs_abs_int @ X2 ) ) ).

% gcd_0_int
thf(fact_5569_gcd__0__left__int,axiom,
    ! [X2: int] :
      ( ( gcd_gcd_int @ zero_zero_int @ X2 )
      = ( abs_abs_int @ X2 ) ) ).

% gcd_0_left_int
thf(fact_5570_gcd__proj2__if__dvd__int,axiom,
    ! [Y: int,X2: int] :
      ( ( dvd_dvd_int @ Y @ X2 )
     => ( ( gcd_gcd_int @ X2 @ Y )
        = ( abs_abs_int @ Y ) ) ) ).

% gcd_proj2_if_dvd_int
thf(fact_5571_gcd__proj1__if__dvd__int,axiom,
    ! [X2: int,Y: int] :
      ( ( dvd_dvd_int @ X2 @ Y )
     => ( ( gcd_gcd_int @ X2 @ Y )
        = ( abs_abs_int @ X2 ) ) ) ).

% gcd_proj1_if_dvd_int
thf(fact_5572_gcd__idem__int,axiom,
    ! [X2: int] :
      ( ( gcd_gcd_int @ X2 @ X2 )
      = ( abs_abs_int @ X2 ) ) ).

% gcd_idem_int
thf(fact_5573_gcd__red__int,axiom,
    ( gcd_gcd_int
    = ( ^ [X: int,Y4: int] : ( gcd_gcd_int @ Y4 @ ( modulo_modulo_int @ X @ Y4 ) ) ) ) ).

% gcd_red_int
thf(fact_5574_gcd__ge__0__int,axiom,
    ! [X2: int,Y: int] : ( ord_less_eq_int @ zero_zero_int @ ( gcd_gcd_int @ X2 @ Y ) ) ).

% gcd_ge_0_int
thf(fact_5575_bezout__int,axiom,
    ! [X2: int,Y: int] :
    ? [U4: int,V4: int] :
      ( ( plus_plus_int @ ( times_times_int @ U4 @ X2 ) @ ( times_times_int @ V4 @ Y ) )
      = ( gcd_gcd_int @ X2 @ Y ) ) ).

% bezout_int
thf(fact_5576_gcd__mult__distrib__int,axiom,
    ! [K: int,M: int,N: int] :
      ( ( times_times_int @ ( abs_abs_int @ K ) @ ( gcd_gcd_int @ M @ N ) )
      = ( gcd_gcd_int @ ( times_times_int @ K @ M ) @ ( times_times_int @ K @ N ) ) ) ).

% gcd_mult_distrib_int
thf(fact_5577_gcd__le2__int,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ zero_zero_int @ B )
     => ( ord_less_eq_int @ ( gcd_gcd_int @ A @ B ) @ B ) ) ).

% gcd_le2_int
thf(fact_5578_gcd__le1__int,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ zero_zero_int @ A )
     => ( ord_less_eq_int @ ( gcd_gcd_int @ A @ B ) @ A ) ) ).

% gcd_le1_int
thf(fact_5579_gcd__cases__int,axiom,
    ! [X2: int,Y: int,P: int > $o] :
      ( ( ( ord_less_eq_int @ zero_zero_int @ X2 )
       => ( ( ord_less_eq_int @ zero_zero_int @ Y )
         => ( P @ ( gcd_gcd_int @ X2 @ Y ) ) ) )
     => ( ( ( ord_less_eq_int @ zero_zero_int @ X2 )
         => ( ( ord_less_eq_int @ Y @ zero_zero_int )
           => ( P @ ( gcd_gcd_int @ X2 @ ( uminus_uminus_int @ Y ) ) ) ) )
       => ( ( ( ord_less_eq_int @ X2 @ zero_zero_int )
           => ( ( ord_less_eq_int @ zero_zero_int @ Y )
             => ( P @ ( gcd_gcd_int @ ( uminus_uminus_int @ X2 ) @ Y ) ) ) )
         => ( ( ( ord_less_eq_int @ X2 @ zero_zero_int )
             => ( ( ord_less_eq_int @ Y @ zero_zero_int )
               => ( P @ ( gcd_gcd_int @ ( uminus_uminus_int @ X2 ) @ ( uminus_uminus_int @ Y ) ) ) ) )
           => ( P @ ( gcd_gcd_int @ X2 @ Y ) ) ) ) ) ) ).

% gcd_cases_int
thf(fact_5580_gcd__unique__int,axiom,
    ! [D: int,A: int,B: int] :
      ( ( ( ord_less_eq_int @ zero_zero_int @ D )
        & ( dvd_dvd_int @ D @ A )
        & ( dvd_dvd_int @ D @ B )
        & ! [E4: int] :
            ( ( ( dvd_dvd_int @ E4 @ A )
              & ( dvd_dvd_int @ E4 @ B ) )
           => ( dvd_dvd_int @ E4 @ D ) ) )
      = ( D
        = ( gcd_gcd_int @ A @ B ) ) ) ).

% gcd_unique_int
thf(fact_5581_gcd__non__0__int,axiom,
    ! [Y: int,X2: int] :
      ( ( ord_less_int @ zero_zero_int @ Y )
     => ( ( gcd_gcd_int @ X2 @ Y )
        = ( gcd_gcd_int @ Y @ ( modulo_modulo_int @ X2 @ Y ) ) ) ) ).

% gcd_non_0_int
thf(fact_5582_gcd__code__int,axiom,
    ( gcd_gcd_int
    = ( ^ [K2: int,L2: int] : ( abs_abs_int @ ( if_int @ ( L2 = zero_zero_int ) @ K2 @ ( gcd_gcd_int @ L2 @ ( modulo_modulo_int @ ( abs_abs_int @ K2 ) @ ( abs_abs_int @ L2 ) ) ) ) ) ) ) ).

% gcd_code_int
thf(fact_5583_Code__Numeral_Odup__def,axiom,
    ( code_dup
    = ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int
      @ ^ [K2: int] : ( plus_plus_int @ K2 @ K2 ) ) ) ).

% Code_Numeral.dup_def
thf(fact_5584_gcd__nat_Oeq__neutr__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( gcd_gcd_nat @ A @ B )
        = zero_zero_nat )
      = ( ( A = zero_zero_nat )
        & ( B = zero_zero_nat ) ) ) ).

% gcd_nat.eq_neutr_iff
thf(fact_5585_gcd__nat_Oleft__neutral,axiom,
    ! [A: nat] :
      ( ( gcd_gcd_nat @ zero_zero_nat @ A )
      = A ) ).

% gcd_nat.left_neutral
thf(fact_5586_gcd__nat_Oneutr__eq__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( zero_zero_nat
        = ( gcd_gcd_nat @ A @ B ) )
      = ( ( A = zero_zero_nat )
        & ( B = zero_zero_nat ) ) ) ).

% gcd_nat.neutr_eq_iff
thf(fact_5587_gcd__nat_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( gcd_gcd_nat @ A @ zero_zero_nat )
      = A ) ).

% gcd_nat.right_neutral
thf(fact_5588_gcd__0__nat,axiom,
    ! [X2: nat] :
      ( ( gcd_gcd_nat @ X2 @ zero_zero_nat )
      = X2 ) ).

% gcd_0_nat
thf(fact_5589_gcd__0__left__nat,axiom,
    ! [X2: nat] :
      ( ( gcd_gcd_nat @ zero_zero_nat @ X2 )
      = X2 ) ).

% gcd_0_left_nat
thf(fact_5590_gcd__1__nat,axiom,
    ! [M: nat] :
      ( ( gcd_gcd_nat @ M @ one_one_nat )
      = one_one_nat ) ).

% gcd_1_nat
thf(fact_5591_gcd__nat_Oabsorb1,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( gcd_gcd_nat @ A @ B )
        = A ) ) ).

% gcd_nat.absorb1
thf(fact_5592_gcd__nat_Oabsorb2,axiom,
    ! [B: nat,A: nat] :
      ( ( dvd_dvd_nat @ B @ A )
     => ( ( gcd_gcd_nat @ A @ B )
        = B ) ) ).

% gcd_nat.absorb2
thf(fact_5593_gcd__nat_Obounded__iff,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ ( gcd_gcd_nat @ B @ C ) )
      = ( ( dvd_dvd_nat @ A @ B )
        & ( dvd_dvd_nat @ A @ C ) ) ) ).

% gcd_nat.bounded_iff
thf(fact_5594_gcd__proj1__if__dvd__nat,axiom,
    ! [X2: nat,Y: nat] :
      ( ( dvd_dvd_nat @ X2 @ Y )
     => ( ( gcd_gcd_nat @ X2 @ Y )
        = X2 ) ) ).

% gcd_proj1_if_dvd_nat
thf(fact_5595_gcd__proj2__if__dvd__nat,axiom,
    ! [Y: nat,X2: nat] :
      ( ( dvd_dvd_nat @ Y @ X2 )
     => ( ( gcd_gcd_nat @ X2 @ Y )
        = Y ) ) ).

% gcd_proj2_if_dvd_nat
thf(fact_5596_gcd__Suc__0,axiom,
    ! [M: nat] :
      ( ( gcd_gcd_nat @ M @ ( suc @ zero_zero_nat ) )
      = ( suc @ zero_zero_nat ) ) ).

% gcd_Suc_0
thf(fact_5597_gcd__pos__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( gcd_gcd_nat @ M @ N ) )
      = ( ( M != zero_zero_nat )
        | ( N != zero_zero_nat ) ) ) ).

% gcd_pos_nat
thf(fact_5598_gcd__int__int__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( gcd_gcd_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
      = ( semiri1314217659103216013at_int @ ( gcd_gcd_nat @ M @ N ) ) ) ).

% gcd_int_int_eq
thf(fact_5599_gcd__nat__abs__left__eq,axiom,
    ! [K: int,N: nat] :
      ( ( gcd_gcd_nat @ ( nat2 @ ( abs_abs_int @ K ) ) @ N )
      = ( nat2 @ ( gcd_gcd_int @ K @ ( semiri1314217659103216013at_int @ N ) ) ) ) ).

% gcd_nat_abs_left_eq
thf(fact_5600_gcd__nat__abs__right__eq,axiom,
    ! [N: nat,K: int] :
      ( ( gcd_gcd_nat @ N @ ( nat2 @ ( abs_abs_int @ K ) ) )
      = ( nat2 @ ( gcd_gcd_int @ ( semiri1314217659103216013at_int @ N ) @ K ) ) ) ).

% gcd_nat_abs_right_eq
thf(fact_5601_gcd__mult__distrib__nat,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( times_times_nat @ K @ ( gcd_gcd_nat @ M @ N ) )
      = ( gcd_gcd_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) ) ) ).

% gcd_mult_distrib_nat
thf(fact_5602_gcd__nat_Omono,axiom,
    ! [A: nat,C: nat,B: nat,D: nat] :
      ( ( dvd_dvd_nat @ A @ C )
     => ( ( dvd_dvd_nat @ B @ D )
       => ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ ( gcd_gcd_nat @ C @ D ) ) ) ) ).

% gcd_nat.mono
thf(fact_5603_gcd__nat_OorderE,axiom,
    ! [A: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( A
        = ( gcd_gcd_nat @ A @ B ) ) ) ).

% gcd_nat.orderE
thf(fact_5604_gcd__nat_OorderI,axiom,
    ! [A: nat,B: nat] :
      ( ( A
        = ( gcd_gcd_nat @ A @ B ) )
     => ( dvd_dvd_nat @ A @ B ) ) ).

% gcd_nat.orderI
thf(fact_5605_gcd__nat_Oabsorb3,axiom,
    ! [A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
     => ( ( gcd_gcd_nat @ A @ B )
        = A ) ) ).

% gcd_nat.absorb3
thf(fact_5606_gcd__nat_Oabsorb4,axiom,
    ! [B: nat,A: nat] :
      ( ( ( dvd_dvd_nat @ B @ A )
        & ( B != A ) )
     => ( ( gcd_gcd_nat @ A @ B )
        = B ) ) ).

% gcd_nat.absorb4
thf(fact_5607_gcd__nat_OboundedE,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ ( gcd_gcd_nat @ B @ C ) )
     => ~ ( ( dvd_dvd_nat @ A @ B )
         => ~ ( dvd_dvd_nat @ A @ C ) ) ) ).

% gcd_nat.boundedE
thf(fact_5608_gcd__nat_OboundedI,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( dvd_dvd_nat @ A @ B )
     => ( ( dvd_dvd_nat @ A @ C )
       => ( dvd_dvd_nat @ A @ ( gcd_gcd_nat @ B @ C ) ) ) ) ).

% gcd_nat.boundedI
thf(fact_5609_gcd__nat_Oorder__iff,axiom,
    ( dvd_dvd_nat
    = ( ^ [A2: nat,B2: nat] :
          ( A2
          = ( gcd_gcd_nat @ A2 @ B2 ) ) ) ) ).

% gcd_nat.order_iff
thf(fact_5610_gcd__nat_Ocobounded1,axiom,
    ! [A: nat,B: nat] : ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ A ) ).

% gcd_nat.cobounded1
thf(fact_5611_gcd__nat_Ocobounded2,axiom,
    ! [A: nat,B: nat] : ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ B ) ).

% gcd_nat.cobounded2
thf(fact_5612_gcd__nat_Oabsorb__iff1,axiom,
    ( dvd_dvd_nat
    = ( ^ [A2: nat,B2: nat] :
          ( ( gcd_gcd_nat @ A2 @ B2 )
          = A2 ) ) ) ).

% gcd_nat.absorb_iff1
thf(fact_5613_gcd__nat_Oabsorb__iff2,axiom,
    ( dvd_dvd_nat
    = ( ^ [B2: nat,A2: nat] :
          ( ( gcd_gcd_nat @ A2 @ B2 )
          = B2 ) ) ) ).

% gcd_nat.absorb_iff2
thf(fact_5614_gcd__nat_OcoboundedI1,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( dvd_dvd_nat @ A @ C )
     => ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ C ) ) ).

% gcd_nat.coboundedI1
thf(fact_5615_gcd__nat_OcoboundedI2,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( dvd_dvd_nat @ B @ C )
     => ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ C ) ) ).

% gcd_nat.coboundedI2
thf(fact_5616_gcd__nat_Ostrict__boundedE,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( dvd_dvd_nat @ A @ ( gcd_gcd_nat @ B @ C ) )
        & ( A
         != ( gcd_gcd_nat @ B @ C ) ) )
     => ~ ( ( ( dvd_dvd_nat @ A @ B )
            & ( A != B ) )
         => ~ ( ( dvd_dvd_nat @ A @ C )
              & ( A != C ) ) ) ) ).

% gcd_nat.strict_boundedE
thf(fact_5617_gcd__nat_Ostrict__order__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ B )
        & ( A != B ) )
      = ( ( A
          = ( gcd_gcd_nat @ A @ B ) )
        & ( A != B ) ) ) ).

% gcd_nat.strict_order_iff
thf(fact_5618_gcd__nat_Ostrict__coboundedI1,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ A @ C )
        & ( A != C ) )
     => ( ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ C )
        & ( ( gcd_gcd_nat @ A @ B )
         != C ) ) ) ).

% gcd_nat.strict_coboundedI1
thf(fact_5619_gcd__nat_Ostrict__coboundedI2,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( ( dvd_dvd_nat @ B @ C )
        & ( B != C ) )
     => ( ( dvd_dvd_nat @ ( gcd_gcd_nat @ A @ B ) @ C )
        & ( ( gcd_gcd_nat @ A @ B )
         != C ) ) ) ).

% gcd_nat.strict_coboundedI2
thf(fact_5620_gcd__unique__nat,axiom,
    ! [D: nat,A: nat,B: nat] :
      ( ( ( dvd_dvd_nat @ D @ A )
        & ( dvd_dvd_nat @ D @ B )
        & ! [E4: nat] :
            ( ( ( dvd_dvd_nat @ E4 @ A )
              & ( dvd_dvd_nat @ E4 @ B ) )
           => ( dvd_dvd_nat @ E4 @ D ) ) )
      = ( D
        = ( gcd_gcd_nat @ A @ B ) ) ) ).

% gcd_unique_nat
thf(fact_5621_gcd__red__nat,axiom,
    ( gcd_gcd_nat
    = ( ^ [X: nat,Y4: nat] : ( gcd_gcd_nat @ Y4 @ ( modulo_modulo_nat @ X @ Y4 ) ) ) ) ).

% gcd_red_nat
thf(fact_5622_gcd__le1__nat,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ( ord_less_eq_nat @ ( gcd_gcd_nat @ A @ B ) @ A ) ) ).

% gcd_le1_nat
thf(fact_5623_gcd__le2__nat,axiom,
    ! [B: nat,A: nat] :
      ( ( B != zero_zero_nat )
     => ( ord_less_eq_nat @ ( gcd_gcd_nat @ A @ B ) @ B ) ) ).

% gcd_le2_nat
thf(fact_5624_gcd__diff2__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( gcd_gcd_nat @ ( minus_minus_nat @ N @ M ) @ N )
        = ( gcd_gcd_nat @ M @ N ) ) ) ).

% gcd_diff2_nat
thf(fact_5625_gcd__diff1__nat,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_eq_nat @ N @ M )
     => ( ( gcd_gcd_nat @ ( minus_minus_nat @ M @ N ) @ N )
        = ( gcd_gcd_nat @ M @ N ) ) ) ).

% gcd_diff1_nat
thf(fact_5626_gcd__non__0__nat,axiom,
    ! [Y: nat,X2: nat] :
      ( ( Y != zero_zero_nat )
     => ( ( gcd_gcd_nat @ X2 @ Y )
        = ( gcd_gcd_nat @ Y @ ( modulo_modulo_nat @ X2 @ Y ) ) ) ) ).

% gcd_non_0_nat
thf(fact_5627_gcd__nat_Osimps,axiom,
    ( gcd_gcd_nat
    = ( ^ [X: nat,Y4: nat] : ( if_nat @ ( Y4 = zero_zero_nat ) @ X @ ( gcd_gcd_nat @ Y4 @ ( modulo_modulo_nat @ X @ Y4 ) ) ) ) ) ).

% gcd_nat.simps
thf(fact_5628_gcd__nat_Oelims,axiom,
    ! [X2: nat,Xa: nat,Y: nat] :
      ( ( ( gcd_gcd_nat @ X2 @ Xa )
        = Y )
     => ( ( ( Xa = zero_zero_nat )
         => ( Y = X2 ) )
        & ( ( Xa != zero_zero_nat )
         => ( Y
            = ( gcd_gcd_nat @ Xa @ ( modulo_modulo_nat @ X2 @ Xa ) ) ) ) ) ) ).

% gcd_nat.elims
thf(fact_5629_gcd__integer_Orep__eq,axiom,
    ! [X2: code_integer,Xa: code_integer] :
      ( ( code_int_of_integer @ ( gcd_gcd_Code_integer @ X2 @ Xa ) )
      = ( gcd_gcd_int @ ( code_int_of_integer @ X2 ) @ ( code_int_of_integer @ Xa ) ) ) ).

% gcd_integer.rep_eq
thf(fact_5630_gcd__integer_Oabs__eq,axiom,
    ! [Xa: int,X2: int] :
      ( ( gcd_gcd_Code_integer @ ( code_integer_of_int @ Xa ) @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( gcd_gcd_int @ Xa @ X2 ) ) ) ).

% gcd_integer.abs_eq
thf(fact_5631_Code__Numeral_Odup__code_I1_J,axiom,
    ( ( code_dup @ zero_z3403309356797280102nteger )
    = zero_z3403309356797280102nteger ) ).

% Code_Numeral.dup_code(1)
thf(fact_5632_Gcd__in,axiom,
    ! [A4: set_nat] :
      ( ! [A3: nat,B3: nat] :
          ( ( member_nat @ A3 @ A4 )
         => ( ( member_nat @ B3 @ A4 )
           => ( member_nat @ ( gcd_gcd_nat @ A3 @ B3 ) @ A4 ) ) )
     => ( ( A4 != bot_bot_set_nat )
       => ( member_nat @ ( gcd_Gcd_nat @ A4 ) @ A4 ) ) ) ).

% Gcd_in
thf(fact_5633_bezout__nat,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ? [X3: nat,Y2: nat] :
          ( ( times_times_nat @ A @ X3 )
          = ( plus_plus_nat @ ( times_times_nat @ B @ Y2 ) @ ( gcd_gcd_nat @ A @ B ) ) ) ) ).

% bezout_nat
thf(fact_5634_bezout__gcd__nat_H,axiom,
    ! [B: nat,A: nat] :
    ? [X3: nat,Y2: nat] :
      ( ( ( ord_less_eq_nat @ ( times_times_nat @ B @ Y2 ) @ ( times_times_nat @ A @ X3 ) )
        & ( ( minus_minus_nat @ ( times_times_nat @ A @ X3 ) @ ( times_times_nat @ B @ Y2 ) )
          = ( gcd_gcd_nat @ A @ B ) ) )
      | ( ( ord_less_eq_nat @ ( times_times_nat @ A @ Y2 ) @ ( times_times_nat @ B @ X3 ) )
        & ( ( minus_minus_nat @ ( times_times_nat @ B @ X3 ) @ ( times_times_nat @ A @ Y2 ) )
          = ( gcd_gcd_nat @ A @ B ) ) ) ) ).

% bezout_gcd_nat'
thf(fact_5635_gcd__code__integer,axiom,
    ( gcd_gcd_Code_integer
    = ( ^ [K2: code_integer,L2: code_integer] : ( abs_abs_Code_integer @ ( if_Code_integer @ ( L2 = zero_z3403309356797280102nteger ) @ K2 @ ( gcd_gcd_Code_integer @ L2 @ ( modulo364778990260209775nteger @ ( abs_abs_Code_integer @ K2 ) @ ( abs_abs_Code_integer @ L2 ) ) ) ) ) ) ) ).

% gcd_code_integer
thf(fact_5636_dup_Orep__eq,axiom,
    ! [X2: code_integer] :
      ( ( code_int_of_integer @ ( code_dup @ X2 ) )
      = ( plus_plus_int @ ( code_int_of_integer @ X2 ) @ ( code_int_of_integer @ X2 ) ) ) ).

% dup.rep_eq
thf(fact_5637_dup_Oabs__eq,axiom,
    ! [X2: int] :
      ( ( code_dup @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( plus_plus_int @ X2 @ X2 ) ) ) ).

% dup.abs_eq
thf(fact_5638_gcd__int__def,axiom,
    ( gcd_gcd_int
    = ( ^ [X: int,Y4: int] : ( semiri1314217659103216013at_int @ ( gcd_gcd_nat @ ( nat2 @ ( abs_abs_int @ X ) ) @ ( nat2 @ ( abs_abs_int @ Y4 ) ) ) ) ) ) ).

% gcd_int_def
thf(fact_5639_gcd__nat_Osemilattice__neutr__order__axioms,axiom,
    ( semila1623282765462674594er_nat @ gcd_gcd_nat @ zero_zero_nat @ dvd_dvd_nat
    @ ^ [M2: nat,N3: nat] :
        ( ( dvd_dvd_nat @ M2 @ N3 )
        & ( M2 != N3 ) ) ) ).

% gcd_nat.semilattice_neutr_order_axioms
thf(fact_5640_gcd__integer__def,axiom,
    ( gcd_gcd_Code_integer
    = ( map_fu8272188784021352819nteger @ code_int_of_integer @ ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int ) @ gcd_gcd_int ) ) ).

% gcd_integer_def
thf(fact_5641_bezw__aux,axiom,
    ! [X2: nat,Y: nat] :
      ( ( semiri1314217659103216013at_int @ ( gcd_gcd_nat @ X2 @ Y ) )
      = ( plus_plus_int @ ( times_times_int @ ( product_fst_int_int @ ( bezw @ X2 @ Y ) ) @ ( semiri1314217659103216013at_int @ X2 ) ) @ ( times_times_int @ ( product_snd_int_int @ ( bezw @ X2 @ Y ) ) @ ( semiri1314217659103216013at_int @ Y ) ) ) ) ).

% bezw_aux
thf(fact_5642_gcd__nat_Opelims,axiom,
    ! [X2: nat,Xa: nat,Y: nat] :
      ( ( ( gcd_gcd_nat @ X2 @ Xa )
        = Y )
     => ( ( accp_P4275260045618599050at_nat @ gcd_nat_rel @ ( product_Pair_nat_nat @ X2 @ Xa ) )
       => ~ ( ( ( ( Xa = zero_zero_nat )
               => ( Y = X2 ) )
              & ( ( Xa != zero_zero_nat )
               => ( Y
                  = ( gcd_gcd_nat @ Xa @ ( modulo_modulo_nat @ X2 @ Xa ) ) ) ) )
           => ~ ( accp_P4275260045618599050at_nat @ gcd_nat_rel @ ( product_Pair_nat_nat @ X2 @ Xa ) ) ) ) ) ).

% gcd_nat.pelims
thf(fact_5643_plus__rat_Oabs__eq,axiom,
    ! [Xa: product_prod_int_int,X2: product_prod_int_int] :
      ( ( ratrel @ Xa @ Xa )
     => ( ( ratrel @ X2 @ X2 )
       => ( ( plus_plus_rat @ ( abs_Rat @ Xa ) @ ( abs_Rat @ X2 ) )
          = ( abs_Rat @ ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ ( product_fst_int_int @ Xa ) @ ( product_snd_int_int @ X2 ) ) @ ( times_times_int @ ( product_fst_int_int @ X2 ) @ ( product_snd_int_int @ Xa ) ) ) @ ( times_times_int @ ( product_snd_int_int @ Xa ) @ ( product_snd_int_int @ X2 ) ) ) ) ) ) ) ).

% plus_rat.abs_eq
thf(fact_5644_gcd__idem__nat,axiom,
    ! [X2: nat] :
      ( ( gcd_gcd_nat @ X2 @ X2 )
      = X2 ) ).

% gcd_idem_nat
thf(fact_5645_gcd__nat_Oright__idem,axiom,
    ! [A: nat,B: nat] :
      ( ( gcd_gcd_nat @ ( gcd_gcd_nat @ A @ B ) @ B )
      = ( gcd_gcd_nat @ A @ B ) ) ).

% gcd_nat.right_idem
thf(fact_5646_gcd__nat_Oleft__idem,axiom,
    ! [A: nat,B: nat] :
      ( ( gcd_gcd_nat @ A @ ( gcd_gcd_nat @ A @ B ) )
      = ( gcd_gcd_nat @ A @ B ) ) ).

% gcd_nat.left_idem
thf(fact_5647_gcd__nat_Oidem,axiom,
    ! [A: nat] :
      ( ( gcd_gcd_nat @ A @ A )
      = A ) ).

% gcd_nat.idem
thf(fact_5648_ratrel__iff,axiom,
    ( ratrel
    = ( ^ [X: product_prod_int_int,Y4: product_prod_int_int] :
          ( ( ( product_snd_int_int @ X )
           != zero_zero_int )
          & ( ( product_snd_int_int @ Y4 )
           != zero_zero_int )
          & ( ( times_times_int @ ( product_fst_int_int @ X ) @ ( product_snd_int_int @ Y4 ) )
            = ( times_times_int @ ( product_fst_int_int @ Y4 ) @ ( product_snd_int_int @ X ) ) ) ) ) ) ).

% ratrel_iff
thf(fact_5649_one__rat_Orsp,axiom,
    ratrel @ ( product_Pair_int_int @ one_one_int @ one_one_int ) @ ( product_Pair_int_int @ one_one_int @ one_one_int ) ).

% one_rat.rsp
thf(fact_5650_zero__rat_Orsp,axiom,
    ratrel @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) ).

% zero_rat.rsp
thf(fact_5651_ratrel__def,axiom,
    ( ratrel
    = ( ^ [X: product_prod_int_int,Y4: product_prod_int_int] :
          ( ( ( product_snd_int_int @ X )
           != zero_zero_int )
          & ( ( product_snd_int_int @ Y4 )
           != zero_zero_int )
          & ( ( times_times_int @ ( product_fst_int_int @ X ) @ ( product_snd_int_int @ Y4 ) )
            = ( times_times_int @ ( product_fst_int_int @ Y4 ) @ ( product_snd_int_int @ X ) ) ) ) ) ) ).

% ratrel_def
thf(fact_5652_positive_Oabs__eq,axiom,
    ! [X2: product_prod_int_int] :
      ( ( ratrel @ X2 @ X2 )
     => ( ( positive @ ( abs_Rat @ X2 ) )
        = ( ord_less_int @ zero_zero_int @ ( times_times_int @ ( product_fst_int_int @ X2 ) @ ( product_snd_int_int @ X2 ) ) ) ) ) ).

% positive.abs_eq
thf(fact_5653_inverse__rat_Oabs__eq,axiom,
    ! [X2: product_prod_int_int] :
      ( ( ratrel @ X2 @ X2 )
     => ( ( inverse_inverse_rat @ ( abs_Rat @ X2 ) )
        = ( abs_Rat
          @ ( if_Pro3027730157355071871nt_int
            @ ( ( product_fst_int_int @ X2 )
              = zero_zero_int )
            @ ( product_Pair_int_int @ zero_zero_int @ one_one_int )
            @ ( product_Pair_int_int @ ( product_snd_int_int @ X2 ) @ ( product_fst_int_int @ X2 ) ) ) ) ) ) ).

% inverse_rat.abs_eq
thf(fact_5654_Code__Numeral_Osub__code_I9_J,axiom,
    ! [M: num,N: num] :
      ( ( code_sub @ ( bit0 @ M ) @ ( bit1 @ N ) )
      = ( minus_8373710615458151222nteger @ ( code_dup @ ( code_sub @ M @ N ) ) @ one_one_Code_integer ) ) ).

% Code_Numeral.sub_code(9)
thf(fact_5655_Code__Numeral_Osub__code_I8_J,axiom,
    ! [M: num,N: num] :
      ( ( code_sub @ ( bit1 @ M ) @ ( bit0 @ N ) )
      = ( plus_p5714425477246183910nteger @ ( code_dup @ ( code_sub @ M @ N ) ) @ one_one_Code_integer ) ) ).

% Code_Numeral.sub_code(8)
thf(fact_5656_Code__Numeral_Osub__code_I1_J,axiom,
    ( ( code_sub @ one @ one )
    = zero_z3403309356797280102nteger ) ).

% Code_Numeral.sub_code(1)
thf(fact_5657_Code__Numeral_Osub__code_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( code_sub @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( code_dup @ ( code_sub @ M @ N ) ) ) ).

% Code_Numeral.sub_code(6)
thf(fact_5658_Code__Numeral_Osub__code_I7_J,axiom,
    ! [M: num,N: num] :
      ( ( code_sub @ ( bit1 @ M ) @ ( bit1 @ N ) )
      = ( code_dup @ ( code_sub @ M @ N ) ) ) ).

% Code_Numeral.sub_code(7)
thf(fact_5659_sub_Orep__eq,axiom,
    ! [X2: num,Xa: num] :
      ( ( code_int_of_integer @ ( code_sub @ X2 @ Xa ) )
      = ( minus_minus_int @ ( numeral_numeral_int @ X2 ) @ ( numeral_numeral_int @ Xa ) ) ) ).

% sub.rep_eq
thf(fact_5660_sub_Oabs__eq,axiom,
    ( code_sub
    = ( ^ [Xa4: num,X: num] : ( code_integer_of_int @ ( minus_minus_int @ ( numeral_numeral_int @ Xa4 ) @ ( numeral_numeral_int @ X ) ) ) ) ) ).

% sub.abs_eq
thf(fact_5661_Code__Numeral_Osub__def,axiom,
    ( code_sub
    = ( map_fu6891787308814931657nteger @ id_num @ ( map_fu8638147718074629079nteger @ id_num @ code_integer_of_int )
      @ ^ [M2: num,N3: num] : ( minus_minus_int @ ( numeral_numeral_int @ M2 ) @ ( numeral_numeral_int @ N3 ) ) ) ) ).

% Code_Numeral.sub_def
thf(fact_5662_cr__rat__def,axiom,
    ( cr_rat
    = ( ^ [X: product_prod_int_int,Y4: rat] :
          ( ( ratrel @ X @ X )
          & ( ( abs_Rat @ X )
            = Y4 ) ) ) ) ).

% cr_rat_def
thf(fact_5663_card__UNIV__unit,axiom,
    ( ( finite410649719033368117t_unit @ top_to1996260823553986621t_unit )
    = one_one_nat ) ).

% card_UNIV_unit
thf(fact_5664_infinite__UNIV__int,axiom,
    ~ ( finite_finite_int @ top_top_set_int ) ).

% infinite_UNIV_int
thf(fact_5665_integer__of__int__cases,axiom,
    ! [X2: code_integer] :
      ~ ! [Y2: int] :
          ( ( X2
            = ( code_integer_of_int @ Y2 ) )
         => ~ ( member_int @ Y2 @ top_top_set_int ) ) ).

% integer_of_int_cases
thf(fact_5666_integer__of__int__induct,axiom,
    ! [P: code_integer > $o,X2: code_integer] :
      ( ! [Y2: int] :
          ( ( member_int @ Y2 @ top_top_set_int )
         => ( P @ ( code_integer_of_int @ Y2 ) ) )
     => ( P @ X2 ) ) ).

% integer_of_int_induct
thf(fact_5667_integer__of__int__inject,axiom,
    ! [X2: int,Y: int] :
      ( ( member_int @ X2 @ top_top_set_int )
     => ( ( member_int @ Y @ top_top_set_int )
       => ( ( ( code_integer_of_int @ X2 )
            = ( code_integer_of_int @ Y ) )
          = ( X2 = Y ) ) ) ) ).

% integer_of_int_inject
thf(fact_5668_int__of__integer,axiom,
    ! [X2: code_integer] : ( member_int @ ( code_int_of_integer @ X2 ) @ top_top_set_int ) ).

% int_of_integer
thf(fact_5669_int__of__integer__cases,axiom,
    ! [Y: int] :
      ( ( member_int @ Y @ top_top_set_int )
     => ~ ! [X3: code_integer] :
            ( Y
           != ( code_int_of_integer @ X3 ) ) ) ).

% int_of_integer_cases
thf(fact_5670_int__of__integer__induct,axiom,
    ! [Y: int,P: int > $o] :
      ( ( member_int @ Y @ top_top_set_int )
     => ( ! [X3: code_integer] : ( P @ ( code_int_of_integer @ X3 ) )
       => ( P @ Y ) ) ) ).

% int_of_integer_induct
thf(fact_5671_integer__of__int__inverse,axiom,
    ! [Y: int] :
      ( ( member_int @ Y @ top_top_set_int )
     => ( ( code_int_of_integer @ ( code_integer_of_int @ Y ) )
        = Y ) ) ).

% integer_of_int_inverse
thf(fact_5672_int__in__range__abs,axiom,
    ! [N: nat] : ( member_int @ ( semiri1314217659103216013at_int @ N ) @ ( image_int_int @ abs_abs_int @ top_top_set_int ) ) ).

% int_in_range_abs
thf(fact_5673_range__mod,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( image_nat_nat
          @ ^ [M2: nat] : ( modulo_modulo_nat @ M2 @ N )
          @ top_top_set_nat )
        = ( set_or4665077453230672383an_nat @ zero_zero_nat @ N ) ) ) ).

% range_mod
thf(fact_5674_UN__atMost__UNIV,axiom,
    ( ( comple7399068483239264473et_nat @ ( image_nat_set_nat @ set_ord_atMost_nat @ top_top_set_nat ) )
    = top_top_set_nat ) ).

% UN_atMost_UNIV
thf(fact_5675_UN__lessThan__UNIV,axiom,
    ( ( comple7399068483239264473et_nat @ ( image_nat_set_nat @ set_ord_lessThan_nat @ top_top_set_nat ) )
    = top_top_set_nat ) ).

% UN_lessThan_UNIV
thf(fact_5676_Sup__nat__empty,axiom,
    ( ( complete_Sup_Sup_nat @ bot_bot_set_nat )
    = zero_zero_nat ) ).

% Sup_nat_empty
thf(fact_5677_natLess__def,axiom,
    ( bNF_Ca8459412986667044542atLess
    = ( collec3392354462482085612at_nat @ ( produc6081775807080527818_nat_o @ ord_less_nat ) ) ) ).

% natLess_def
thf(fact_5678_Gcd__eq__Max,axiom,
    ! [M3: set_nat] :
      ( ( finite_finite_nat @ M3 )
     => ( ( M3 != bot_bot_set_nat )
       => ( ~ ( member_nat @ zero_zero_nat @ M3 )
         => ( ( gcd_Gcd_nat @ M3 )
            = ( lattic8265883725875713057ax_nat
              @ ( comple7806235888213564991et_nat
                @ ( image_nat_set_nat
                  @ ^ [M2: nat] :
                      ( collect_nat
                      @ ^ [D4: nat] : ( dvd_dvd_nat @ D4 @ M2 ) )
                  @ M3 ) ) ) ) ) ) ) ).

% Gcd_eq_Max
thf(fact_5679_Max__divisors__self__nat,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ( lattic8265883725875713057ax_nat
          @ ( collect_nat
            @ ^ [D4: nat] : ( dvd_dvd_nat @ D4 @ N ) ) )
        = N ) ) ).

% Max_divisors_self_nat
thf(fact_5680_Sup__nat__def,axiom,
    ( complete_Sup_Sup_nat
    = ( ^ [X5: set_nat] : ( if_nat @ ( X5 = bot_bot_set_nat ) @ zero_zero_nat @ ( lattic8265883725875713057ax_nat @ X5 ) ) ) ) ).

% Sup_nat_def
thf(fact_5681_card__le__Suc__Max,axiom,
    ! [S3: set_nat] :
      ( ( finite_finite_nat @ S3 )
     => ( ord_less_eq_nat @ ( finite_card_nat @ S3 ) @ ( suc @ ( lattic8265883725875713057ax_nat @ S3 ) ) ) ) ).

% card_le_Suc_Max
thf(fact_5682_divide__nat__def,axiom,
    ( divide_divide_nat
    = ( ^ [M2: nat,N3: nat] :
          ( if_nat @ ( N3 = zero_zero_nat ) @ zero_zero_nat
          @ ( lattic8265883725875713057ax_nat
            @ ( collect_nat
              @ ^ [K2: nat] : ( ord_less_eq_nat @ ( times_times_nat @ K2 @ N3 ) @ M2 ) ) ) ) ) ) ).

% divide_nat_def
thf(fact_5683_gcd__is__Max__divisors__nat,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( gcd_gcd_nat @ M @ N )
        = ( lattic8265883725875713057ax_nat
          @ ( collect_nat
            @ ^ [D4: nat] :
                ( ( dvd_dvd_nat @ D4 @ M )
                & ( dvd_dvd_nat @ D4 @ N ) ) ) ) ) ) ).

% gcd_is_Max_divisors_nat
thf(fact_5684_Max__divisors__self__int,axiom,
    ! [N: int] :
      ( ( N != zero_zero_int )
     => ( ( lattic8263393255366662781ax_int
          @ ( collect_int
            @ ^ [D4: int] : ( dvd_dvd_int @ D4 @ N ) ) )
        = ( abs_abs_int @ N ) ) ) ).

% Max_divisors_self_int
thf(fact_5685_gcd__is__Max__divisors__int,axiom,
    ! [N: int,M: int] :
      ( ( N != zero_zero_int )
     => ( ( gcd_gcd_int @ M @ N )
        = ( lattic8263393255366662781ax_int
          @ ( collect_int
            @ ^ [D4: int] :
                ( ( dvd_dvd_int @ D4 @ M )
                & ( dvd_dvd_int @ D4 @ N ) ) ) ) ) ) ).

% gcd_is_Max_divisors_int
thf(fact_5686_INT__greaterThan__UNIV,axiom,
    ( ( comple7806235888213564991et_nat @ ( image_nat_set_nat @ set_or1210151606488870762an_nat @ top_top_set_nat ) )
    = bot_bot_set_nat ) ).

% INT_greaterThan_UNIV
thf(fact_5687_atLeastLessThan__add__Un,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( set_or4665077453230672383an_nat @ I @ ( plus_plus_nat @ J @ K ) )
        = ( sup_sup_set_nat @ ( set_or4665077453230672383an_nat @ I @ J ) @ ( set_or4665077453230672383an_nat @ J @ ( plus_plus_nat @ J @ K ) ) ) ) ) ).

% atLeastLessThan_add_Un
thf(fact_5688_greaterThan__0,axiom,
    ( ( set_or1210151606488870762an_nat @ zero_zero_nat )
    = ( image_nat_nat @ suc @ top_top_set_nat ) ) ).

% greaterThan_0
thf(fact_5689_greaterThan__Suc,axiom,
    ! [K: nat] :
      ( ( set_or1210151606488870762an_nat @ ( suc @ K ) )
      = ( minus_minus_set_nat @ ( set_or1210151606488870762an_nat @ K ) @ ( insert_nat @ ( suc @ K ) @ bot_bot_set_nat ) ) ) ).

% greaterThan_Suc
thf(fact_5690_atLeast__0,axiom,
    ( ( set_ord_atLeast_nat @ zero_zero_nat )
    = top_top_set_nat ) ).

% atLeast_0
thf(fact_5691_sup__nat__def,axiom,
    sup_sup_nat = ord_max_nat ).

% sup_nat_def
thf(fact_5692_sup__int__def,axiom,
    sup_sup_int = ord_max_int ).

% sup_int_def
thf(fact_5693_atLeast__Suc__greaterThan,axiom,
    ! [K: nat] :
      ( ( set_ord_atLeast_nat @ ( suc @ K ) )
      = ( set_or1210151606488870762an_nat @ K ) ) ).

% atLeast_Suc_greaterThan
thf(fact_5694_atLeast__Suc,axiom,
    ! [K: nat] :
      ( ( set_ord_atLeast_nat @ ( suc @ K ) )
      = ( minus_minus_set_nat @ ( set_ord_atLeast_nat @ K ) @ ( insert_nat @ K @ bot_bot_set_nat ) ) ) ).

% atLeast_Suc
thf(fact_5695_UN__atLeast__UNIV,axiom,
    ( ( comple7399068483239264473et_nat @ ( image_nat_set_nat @ set_ord_atLeast_nat @ top_top_set_nat ) )
    = top_top_set_nat ) ).

% UN_atLeast_UNIV
thf(fact_5696_range__abs__Nats,axiom,
    ( ( image_int_int @ abs_abs_int @ top_top_set_int )
    = semiring_1_Nats_int ) ).

% range_abs_Nats
thf(fact_5697_binomial__def,axiom,
    ( binomial
    = ( ^ [N3: nat,K2: nat] :
          ( finite_card_set_nat
          @ ( collect_set_nat
            @ ^ [K6: set_nat] :
                ( ( member_set_nat @ K6 @ ( pow_nat @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ N3 ) ) )
                & ( ( finite_card_nat @ K6 )
                  = K2 ) ) ) ) ) ) ).

% binomial_def
thf(fact_5698_pred__nat__def,axiom,
    ( pred_nat
    = ( collec3392354462482085612at_nat
      @ ( produc6081775807080527818_nat_o
        @ ^ [M2: nat,N3: nat] :
            ( N3
            = ( suc @ M2 ) ) ) ) ) ).

% pred_nat_def
thf(fact_5699_pred__nat__trancl__eq__le,axiom,
    ! [M: nat,N: nat] :
      ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ M @ N ) @ ( transi2905341329935302413cl_nat @ pred_nat ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% pred_nat_trancl_eq_le
thf(fact_5700_vimage__Suc__insert__0,axiom,
    ! [A4: set_nat] :
      ( ( vimage_nat_nat @ suc @ ( insert_nat @ zero_zero_nat @ A4 ) )
      = ( vimage_nat_nat @ suc @ A4 ) ) ).

% vimage_Suc_insert_0
thf(fact_5701_mono__Suc,axiom,
    order_mono_nat_nat @ suc ).

% mono_Suc
thf(fact_5702_mono__times__nat,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( order_mono_nat_nat @ ( times_times_nat @ N ) ) ) ).

% mono_times_nat
thf(fact_5703_mono__ge2__power__minus__self,axiom,
    ! [K: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K )
     => ( order_mono_nat_nat
        @ ^ [M2: nat] : ( minus_minus_nat @ ( power_power_nat @ K @ M2 ) @ M2 ) ) ) ).

% mono_ge2_power_minus_self
thf(fact_5704_quotient__of__def,axiom,
    ( quotient_of
    = ( ^ [X: rat] :
          ( the_Pr4378521158711661632nt_int
          @ ^ [Pair: product_prod_int_int] :
              ( ( X
                = ( fract @ ( product_fst_int_int @ Pair ) @ ( product_snd_int_int @ Pair ) ) )
              & ( ord_less_int @ zero_zero_int @ ( product_snd_int_int @ Pair ) )
              & ( algebr932160517623751201me_int @ ( product_fst_int_int @ Pair ) @ ( product_snd_int_int @ Pair ) ) ) ) ) ) ).

% quotient_of_def
thf(fact_5705_normalize__stable,axiom,
    ! [Q2: int,P3: int] :
      ( ( ord_less_int @ zero_zero_int @ Q2 )
     => ( ( algebr932160517623751201me_int @ P3 @ Q2 )
       => ( ( normalize @ ( product_Pair_int_int @ P3 @ Q2 ) )
          = ( product_Pair_int_int @ P3 @ Q2 ) ) ) ) ).

% normalize_stable
thf(fact_5706_inj__on__diff__nat,axiom,
    ! [N4: set_nat,K: nat] :
      ( ! [N2: nat] :
          ( ( member_nat @ N2 @ N4 )
         => ( ord_less_eq_nat @ K @ N2 ) )
     => ( inj_on_nat_nat
        @ ^ [N3: nat] : ( minus_minus_nat @ N3 @ K )
        @ N4 ) ) ).

% inj_on_diff_nat
thf(fact_5707_coprime__crossproduct__int,axiom,
    ! [A: int,D: int,B: int,C: int] :
      ( ( algebr932160517623751201me_int @ A @ D )
     => ( ( algebr932160517623751201me_int @ B @ C )
       => ( ( ( times_times_int @ ( abs_abs_int @ A ) @ ( abs_abs_int @ C ) )
            = ( times_times_int @ ( abs_abs_int @ B ) @ ( abs_abs_int @ D ) ) )
          = ( ( ( abs_abs_int @ A )
              = ( abs_abs_int @ B ) )
            & ( ( abs_abs_int @ C )
              = ( abs_abs_int @ D ) ) ) ) ) ) ).

% coprime_crossproduct_int
thf(fact_5708_inj__Suc,axiom,
    ! [N4: set_nat] : ( inj_on_nat_nat @ suc @ N4 ) ).

% inj_Suc
thf(fact_5709_Rat__cases,axiom,
    ! [Q2: rat] :
      ~ ! [A3: int,B3: int] :
          ( ( Q2
            = ( fract @ A3 @ B3 ) )
         => ( ( ord_less_int @ zero_zero_int @ B3 )
           => ~ ( algebr932160517623751201me_int @ A3 @ B3 ) ) ) ).

% Rat_cases
thf(fact_5710_Rat__induct,axiom,
    ! [P: rat > $o,Q2: rat] :
      ( ! [A3: int,B3: int] :
          ( ( ord_less_int @ zero_zero_int @ B3 )
         => ( ( algebr932160517623751201me_int @ A3 @ B3 )
           => ( P @ ( fract @ A3 @ B3 ) ) ) )
     => ( P @ Q2 ) ) ).

% Rat_induct
thf(fact_5711_coprime__common__divisor__int,axiom,
    ! [A: int,B: int,X2: int] :
      ( ( algebr932160517623751201me_int @ A @ B )
     => ( ( dvd_dvd_int @ X2 @ A )
       => ( ( dvd_dvd_int @ X2 @ B )
         => ( ( abs_abs_int @ X2 )
            = one_one_int ) ) ) ) ).

% coprime_common_divisor_int
thf(fact_5712_Rat__cases__nonzero,axiom,
    ! [Q2: rat] :
      ( ! [A3: int,B3: int] :
          ( ( Q2
            = ( fract @ A3 @ B3 ) )
         => ( ( ord_less_int @ zero_zero_int @ B3 )
           => ( ( A3 != zero_zero_int )
             => ~ ( algebr932160517623751201me_int @ A3 @ B3 ) ) ) )
     => ( Q2 = zero_zero_rat ) ) ).

% Rat_cases_nonzero
thf(fact_5713_quotient__of__unique,axiom,
    ! [R: rat] :
    ? [X3: product_prod_int_int] :
      ( ( R
        = ( fract @ ( product_fst_int_int @ X3 ) @ ( product_snd_int_int @ X3 ) ) )
      & ( ord_less_int @ zero_zero_int @ ( product_snd_int_int @ X3 ) )
      & ( algebr932160517623751201me_int @ ( product_fst_int_int @ X3 ) @ ( product_snd_int_int @ X3 ) )
      & ! [Y5: product_prod_int_int] :
          ( ( ( R
              = ( fract @ ( product_fst_int_int @ Y5 ) @ ( product_snd_int_int @ Y5 ) ) )
            & ( ord_less_int @ zero_zero_int @ ( product_snd_int_int @ Y5 ) )
            & ( algebr932160517623751201me_int @ ( product_fst_int_int @ Y5 ) @ ( product_snd_int_int @ Y5 ) ) )
         => ( Y5 = X3 ) ) ) ).

% quotient_of_unique
thf(fact_5714_coprime__int__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( algebr932160517623751201me_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
      = ( algebr934650988132801477me_nat @ M @ N ) ) ).

% coprime_int_iff
thf(fact_5715_coprime__nat__abs__left__iff,axiom,
    ! [K: int,N: nat] :
      ( ( algebr934650988132801477me_nat @ ( nat2 @ ( abs_abs_int @ K ) ) @ N )
      = ( algebr932160517623751201me_int @ K @ ( semiri1314217659103216013at_int @ N ) ) ) ).

% coprime_nat_abs_left_iff
thf(fact_5716_coprime__nat__abs__right__iff,axiom,
    ! [N: nat,K: int] :
      ( ( algebr934650988132801477me_nat @ N @ ( nat2 @ ( abs_abs_int @ K ) ) )
      = ( algebr932160517623751201me_int @ ( semiri1314217659103216013at_int @ N ) @ K ) ) ).

% coprime_nat_abs_right_iff
thf(fact_5717_coprime__common__divisor__nat,axiom,
    ! [A: nat,B: nat,X2: nat] :
      ( ( algebr934650988132801477me_nat @ A @ B )
     => ( ( dvd_dvd_nat @ X2 @ A )
       => ( ( dvd_dvd_nat @ X2 @ B )
         => ( X2 = one_one_nat ) ) ) ) ).

% coprime_common_divisor_nat
thf(fact_5718_coprime__Suc__right__nat,axiom,
    ! [N: nat] : ( algebr934650988132801477me_nat @ N @ ( suc @ N ) ) ).

% coprime_Suc_right_nat
thf(fact_5719_coprime__Suc__left__nat,axiom,
    ! [N: nat] : ( algebr934650988132801477me_nat @ ( suc @ N ) @ N ) ).

% coprime_Suc_left_nat
thf(fact_5720_coprime__crossproduct__nat,axiom,
    ! [A: nat,D: nat,B: nat,C: nat] :
      ( ( algebr934650988132801477me_nat @ A @ D )
     => ( ( algebr934650988132801477me_nat @ B @ C )
       => ( ( ( times_times_nat @ A @ C )
            = ( times_times_nat @ B @ D ) )
          = ( ( A = B )
            & ( C = D ) ) ) ) ) ).

% coprime_crossproduct_nat
thf(fact_5721_coprime__Suc__0__left,axiom,
    ! [N: nat] : ( algebr934650988132801477me_nat @ ( suc @ zero_zero_nat ) @ N ) ).

% coprime_Suc_0_left
thf(fact_5722_coprime__Suc__0__right,axiom,
    ! [N: nat] : ( algebr934650988132801477me_nat @ N @ ( suc @ zero_zero_nat ) ) ).

% coprime_Suc_0_right
thf(fact_5723_coprime__diff__one__left__nat,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( algebr934650988132801477me_nat @ ( minus_minus_nat @ N @ one_one_nat ) @ N ) ) ).

% coprime_diff_one_left_nat
thf(fact_5724_coprime__diff__one__right__nat,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( algebr934650988132801477me_nat @ N @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ).

% coprime_diff_one_right_nat
thf(fact_5725_positive_Orsp,axiom,
    ( bNF_re8699439704749558557nt_o_o @ ratrel
    @ ^ [Y3: $o,Z: $o] : Y3 = Z
    @ ^ [X: product_prod_int_int] : ( ord_less_int @ zero_zero_int @ ( times_times_int @ ( product_fst_int_int @ X ) @ ( product_snd_int_int @ X ) ) )
    @ ^ [X: product_prod_int_int] : ( ord_less_int @ zero_zero_int @ ( times_times_int @ ( product_fst_int_int @ X ) @ ( product_snd_int_int @ X ) ) ) ) ).

% positive.rsp
thf(fact_5726_Fract_Orsp,axiom,
    ( bNF_re157797125943740599nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ( bNF_re6250860962936578807nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ratrel )
    @ ^ [A2: int,B2: int] : ( if_Pro3027730157355071871nt_int @ ( B2 = zero_zero_int ) @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ ( product_Pair_int_int @ A2 @ B2 ) )
    @ ^ [A2: int,B2: int] : ( if_Pro3027730157355071871nt_int @ ( B2 = zero_zero_int ) @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ ( product_Pair_int_int @ A2 @ B2 ) ) ) ).

% Fract.rsp
thf(fact_5727_less__eq__integer_Orsp,axiom,
    ( bNF_re3403563459893282935_int_o
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ( bNF_re5089333283451836215nt_o_o
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: $o,Z: $o] : Y3 = Z )
    @ ord_less_eq_int
    @ ord_less_eq_int ) ).

% less_eq_integer.rsp
thf(fact_5728_less__eq__natural_Orsp,axiom,
    ( bNF_re578469030762574527_nat_o
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re4705727531993890431at_o_o
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: $o,Z: $o] : Y3 = Z )
    @ ord_less_eq_nat
    @ ord_less_eq_nat ) ).

% less_eq_natural.rsp
thf(fact_5729_uminus__integer_Orsp,axiom,
    ( bNF_re4712519889275205905nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ uminus_uminus_int
    @ uminus_uminus_int ) ).

% uminus_integer.rsp
thf(fact_5730_minus__natural_Orsp,axiom,
    ( bNF_re1345281282404953727at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re5653821019739307937at_nat
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: nat,Z: nat] : Y3 = Z )
    @ minus_minus_nat
    @ minus_minus_nat ) ).

% minus_natural.rsp
thf(fact_5731_minus__integer_Orsp,axiom,
    ( bNF_re711492959462206631nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ minus_minus_int
    @ minus_minus_int ) ).

% minus_integer.rsp
thf(fact_5732_sub_Orsp,axiom,
    ( bNF_re8402795839162346335um_int
    @ ^ [Y3: num,Z: num] : Y3 = Z
    @ ( bNF_re1822329894187522285nt_int
      @ ^ [Y3: num,Z: num] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ ^ [M2: num,N3: num] : ( minus_minus_int @ ( numeral_numeral_int @ M2 ) @ ( numeral_numeral_int @ N3 ) )
    @ ^ [M2: num,N3: num] : ( minus_minus_int @ ( numeral_numeral_int @ M2 ) @ ( numeral_numeral_int @ N3 ) ) ) ).

% sub.rsp
thf(fact_5733_gcd__integer_Orsp,axiom,
    ( bNF_re711492959462206631nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ gcd_gcd_int
    @ gcd_gcd_int ) ).

% gcd_integer.rsp
thf(fact_5734_integer__of__natural_Orsp,axiom,
    ( bNF_re6650684261131312217nt_int
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ semiri1314217659103216013at_int
    @ semiri1314217659103216013at_int ) ).

% integer_of_natural.rsp
thf(fact_5735_dup_Orsp,axiom,
    ( bNF_re4712519889275205905nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ^ [K2: int] : ( plus_plus_int @ K2 @ K2 )
    @ ^ [K2: int] : ( plus_plus_int @ K2 @ K2 ) ) ).

% dup.rsp
thf(fact_5736_sgn__integer_Orsp,axiom,
    ( bNF_re4712519889275205905nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ sgn_sgn_int
    @ sgn_sgn_int ) ).

% sgn_integer.rsp
thf(fact_5737_plus__natural_Orsp,axiom,
    ( bNF_re1345281282404953727at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re5653821019739307937at_nat
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: nat,Z: nat] : Y3 = Z )
    @ plus_plus_nat
    @ plus_plus_nat ) ).

% plus_natural.rsp
thf(fact_5738_plus__integer_Orsp,axiom,
    ( bNF_re711492959462206631nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ plus_plus_int
    @ plus_plus_int ) ).

% plus_integer.rsp
thf(fact_5739_bit__natural_Orsp,axiom,
    ( bNF_re578469030762574527_nat_o
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ^ [Y3: nat > $o,Z: nat > $o] : Y3 = Z
    @ bit_se1148574629649215175it_nat
    @ bit_se1148574629649215175it_nat ) ).

% bit_natural.rsp
thf(fact_5740_Suc_Orsp,axiom,
    ( bNF_re5653821019739307937at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ suc
    @ suc ) ).

% Suc.rsp
thf(fact_5741_natural__of__integer_Orsp,axiom,
    ( bNF_re3715656647883201625at_nat
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ nat2
    @ nat2 ) ).

% natural_of_integer.rsp
thf(fact_5742_not__integer_Orsp,axiom,
    ( bNF_re4712519889275205905nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ bit_ri7919022796975470100ot_int
    @ bit_ri7919022796975470100ot_int ) ).

% not_integer.rsp
thf(fact_5743_and__natural_Orsp,axiom,
    ( bNF_re1345281282404953727at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re5653821019739307937at_nat
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: nat,Z: nat] : Y3 = Z )
    @ bit_se727722235901077358nd_nat
    @ bit_se727722235901077358nd_nat ) ).

% and_natural.rsp
thf(fact_5744_and__integer_Orsp,axiom,
    ( bNF_re711492959462206631nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ bit_se725231765392027082nd_int
    @ bit_se725231765392027082nd_int ) ).

% and_integer.rsp
thf(fact_5745_take__bit__natural_Orsp,axiom,
    ( bNF_re1345281282404953727at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re5653821019739307937at_nat
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: nat,Z: nat] : Y3 = Z )
    @ bit_se2925701944663578781it_nat
    @ bit_se2925701944663578781it_nat ) ).

% take_bit_natural.rsp
thf(fact_5746_take__bit__integer_Orsp,axiom,
    ( bNF_re4785983289428654063nt_int
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ bit_se2923211474154528505it_int
    @ bit_se2923211474154528505it_int ) ).

% take_bit_integer.rsp
thf(fact_5747_modulo__natural_Orsp,axiom,
    ( bNF_re1345281282404953727at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re5653821019739307937at_nat
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: nat,Z: nat] : Y3 = Z )
    @ modulo_modulo_nat
    @ modulo_modulo_nat ) ).

% modulo_natural.rsp
thf(fact_5748_modulo__integer_Orsp,axiom,
    ( bNF_re711492959462206631nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ modulo_modulo_int
    @ modulo_modulo_int ) ).

% modulo_integer.rsp
thf(fact_5749_unset__bit__natural_Orsp,axiom,
    ( bNF_re1345281282404953727at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re5653821019739307937at_nat
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: nat,Z: nat] : Y3 = Z )
    @ bit_se4205575877204974255it_nat
    @ bit_se4205575877204974255it_nat ) ).

% unset_bit_natural.rsp
thf(fact_5750_unset__bit__integer_Orsp,axiom,
    ( bNF_re4785983289428654063nt_int
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ bit_se4203085406695923979it_int
    @ bit_se4203085406695923979it_int ) ).

% unset_bit_integer.rsp
thf(fact_5751_set__bit__natural_Orsp,axiom,
    ( bNF_re1345281282404953727at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re5653821019739307937at_nat
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: nat,Z: nat] : Y3 = Z )
    @ bit_se7882103937844011126it_nat
    @ bit_se7882103937844011126it_nat ) ).

% set_bit_natural.rsp
thf(fact_5752_set__bit__integer_Orsp,axiom,
    ( bNF_re4785983289428654063nt_int
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ bit_se7879613467334960850it_int
    @ bit_se7879613467334960850it_int ) ).

% set_bit_integer.rsp
thf(fact_5753_flip__bit__integer_Orsp,axiom,
    ( bNF_re4785983289428654063nt_int
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ bit_se2159334234014336723it_int
    @ bit_se2159334234014336723it_int ) ).

% flip_bit_integer.rsp
thf(fact_5754_flip__bit__natural_Orsp,axiom,
    ( bNF_re1345281282404953727at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re5653821019739307937at_nat
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: nat,Z: nat] : Y3 = Z )
    @ bit_se2161824704523386999it_nat
    @ bit_se2161824704523386999it_nat ) ).

% flip_bit_natural.rsp
thf(fact_5755_push__bit__natural_Orsp,axiom,
    ( bNF_re1345281282404953727at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re5653821019739307937at_nat
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: nat,Z: nat] : Y3 = Z )
    @ bit_se547839408752420682it_nat
    @ bit_se547839408752420682it_nat ) ).

% push_bit_natural.rsp
thf(fact_5756_push__bit__integer_Orsp,axiom,
    ( bNF_re4785983289428654063nt_int
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ bit_se545348938243370406it_int
    @ bit_se545348938243370406it_int ) ).

% push_bit_integer.rsp
thf(fact_5757_xor__natural_Orsp,axiom,
    ( bNF_re1345281282404953727at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re5653821019739307937at_nat
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: nat,Z: nat] : Y3 = Z )
    @ bit_se6528837805403552850or_nat
    @ bit_se6528837805403552850or_nat ) ).

% xor_natural.rsp
thf(fact_5758_xor__integer_Orsp,axiom,
    ( bNF_re711492959462206631nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ bit_se6526347334894502574or_int
    @ bit_se6526347334894502574or_int ) ).

% xor_integer.rsp
thf(fact_5759_bit__integer_Orsp,axiom,
    ( bNF_re3376528473927230327_nat_o
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ^ [Y3: nat > $o,Z: nat > $o] : Y3 = Z
    @ bit_se1146084159140164899it_int
    @ bit_se1146084159140164899it_int ) ).

% bit_integer.rsp
thf(fact_5760_or__integer_Orsp,axiom,
    ( bNF_re711492959462206631nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ bit_se1409905431419307370or_int
    @ bit_se1409905431419307370or_int ) ).

% or_integer.rsp
thf(fact_5761_or__natural_Orsp,axiom,
    ( bNF_re1345281282404953727at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re5653821019739307937at_nat
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: nat,Z: nat] : Y3 = Z )
    @ bit_se1412395901928357646or_nat
    @ bit_se1412395901928357646or_nat ) ).

% or_natural.rsp
thf(fact_5762_drop__bit__integer_Orsp,axiom,
    ( bNF_re4785983289428654063nt_int
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ bit_se8568078237143864401it_int
    @ bit_se8568078237143864401it_int ) ).

% drop_bit_integer.rsp
thf(fact_5763_drop__bit__natural_Orsp,axiom,
    ( bNF_re1345281282404953727at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re5653821019739307937at_nat
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: nat,Z: nat] : Y3 = Z )
    @ bit_se8570568707652914677it_nat
    @ bit_se8570568707652914677it_nat ) ).

% drop_bit_natural.rsp
thf(fact_5764_mask__integer_Orsp,axiom,
    ( bNF_re6650684261131312217nt_int
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ bit_se2000444600071755411sk_int
    @ bit_se2000444600071755411sk_int ) ).

% mask_integer.rsp
thf(fact_5765_mask__natural_Orsp,axiom,
    ( bNF_re5653821019739307937at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ bit_se2002935070580805687sk_nat
    @ bit_se2002935070580805687sk_nat ) ).

% mask_natural.rsp
thf(fact_5766_abs__integer_Orsp,axiom,
    ( bNF_re4712519889275205905nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ abs_abs_int
    @ abs_abs_int ) ).

% abs_integer.rsp
thf(fact_5767_divide__integer_Orsp,axiom,
    ( bNF_re711492959462206631nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ divide_divide_int
    @ divide_divide_int ) ).

% divide_integer.rsp
thf(fact_5768_divide__natural_Orsp,axiom,
    ( bNF_re1345281282404953727at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re5653821019739307937at_nat
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: nat,Z: nat] : Y3 = Z )
    @ divide_divide_nat
    @ divide_divide_nat ) ).

% divide_natural.rsp
thf(fact_5769_times__natural_Orsp,axiom,
    ( bNF_re1345281282404953727at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re5653821019739307937at_nat
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: nat,Z: nat] : Y3 = Z )
    @ times_times_nat
    @ times_times_nat ) ).

% times_natural.rsp
thf(fact_5770_times__integer_Orsp,axiom,
    ( bNF_re711492959462206631nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ( bNF_re4712519889275205905nt_int
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: int,Z: int] : Y3 = Z )
    @ times_times_int
    @ times_times_int ) ).

% times_integer.rsp
thf(fact_5771_less__integer_Orsp,axiom,
    ( bNF_re3403563459893282935_int_o
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ( bNF_re5089333283451836215nt_o_o
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ ^ [Y3: $o,Z: $o] : Y3 = Z )
    @ ord_less_int
    @ ord_less_int ) ).

% less_integer.rsp
thf(fact_5772_less__natural_Orsp,axiom,
    ( bNF_re578469030762574527_nat_o
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re4705727531993890431at_o_o
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: $o,Z: $o] : Y3 = Z )
    @ ord_less_nat
    @ ord_less_nat ) ).

% less_natural.rsp
thf(fact_5773_times__rat_Orsp,axiom,
    ( bNF_re5228765855967844073nt_int @ ratrel @ ( bNF_re7145576690424134365nt_int @ ratrel @ ratrel )
    @ ^ [X: product_prod_int_int,Y4: product_prod_int_int] : ( product_Pair_int_int @ ( times_times_int @ ( product_fst_int_int @ X ) @ ( product_fst_int_int @ Y4 ) ) @ ( times_times_int @ ( product_snd_int_int @ X ) @ ( product_snd_int_int @ Y4 ) ) )
    @ ^ [X: product_prod_int_int,Y4: product_prod_int_int] : ( product_Pair_int_int @ ( times_times_int @ ( product_fst_int_int @ X ) @ ( product_fst_int_int @ Y4 ) ) @ ( times_times_int @ ( product_snd_int_int @ X ) @ ( product_snd_int_int @ Y4 ) ) ) ) ).

% times_rat.rsp
thf(fact_5774_plus__rat_Orsp,axiom,
    ( bNF_re5228765855967844073nt_int @ ratrel @ ( bNF_re7145576690424134365nt_int @ ratrel @ ratrel )
    @ ^ [X: product_prod_int_int,Y4: product_prod_int_int] : ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ ( product_fst_int_int @ X ) @ ( product_snd_int_int @ Y4 ) ) @ ( times_times_int @ ( product_fst_int_int @ Y4 ) @ ( product_snd_int_int @ X ) ) ) @ ( times_times_int @ ( product_snd_int_int @ X ) @ ( product_snd_int_int @ Y4 ) ) )
    @ ^ [X: product_prod_int_int,Y4: product_prod_int_int] : ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ ( product_fst_int_int @ X ) @ ( product_snd_int_int @ Y4 ) ) @ ( times_times_int @ ( product_fst_int_int @ Y4 ) @ ( product_snd_int_int @ X ) ) ) @ ( times_times_int @ ( product_snd_int_int @ X ) @ ( product_snd_int_int @ Y4 ) ) ) ) ).

% plus_rat.rsp
thf(fact_5775_num__of__integer_Orsp,axiom,
    ( bNF_re7626690874201225453um_num
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ^ [Y3: num,Z: num] : Y3 = Z
    @ ( comp_nat_num_int @ num_of_nat @ nat2 )
    @ ( comp_nat_num_int @ num_of_nat @ nat2 ) ) ).

% num_of_integer.rsp
thf(fact_5776_uminus__rat_Orsp,axiom,
    ( bNF_re7145576690424134365nt_int @ ratrel @ ratrel
    @ ^ [X: product_prod_int_int] : ( product_Pair_int_int @ ( uminus_uminus_int @ ( product_fst_int_int @ X ) ) @ ( product_snd_int_int @ X ) )
    @ ^ [X: product_prod_int_int] : ( product_Pair_int_int @ ( uminus_uminus_int @ ( product_fst_int_int @ X ) ) @ ( product_snd_int_int @ X ) ) ) ).

% uminus_rat.rsp
thf(fact_5777_inverse__rat_Orsp,axiom,
    ( bNF_re7145576690424134365nt_int @ ratrel @ ratrel
    @ ^ [X: product_prod_int_int] :
        ( if_Pro3027730157355071871nt_int
        @ ( ( product_fst_int_int @ X )
          = zero_zero_int )
        @ ( product_Pair_int_int @ zero_zero_int @ one_one_int )
        @ ( product_Pair_int_int @ ( product_snd_int_int @ X ) @ ( product_fst_int_int @ X ) ) )
    @ ^ [X: product_prod_int_int] :
        ( if_Pro3027730157355071871nt_int
        @ ( ( product_fst_int_int @ X )
          = zero_zero_int )
        @ ( product_Pair_int_int @ zero_zero_int @ one_one_int )
        @ ( product_Pair_int_int @ ( product_snd_int_int @ X ) @ ( product_fst_int_int @ X ) ) ) ) ).

% inverse_rat.rsp
thf(fact_5778_plus__rat_Otransfer,axiom,
    ( bNF_re7627151682743391978at_rat @ pcr_rat @ ( bNF_re8279943556446156061nt_rat @ pcr_rat @ pcr_rat )
    @ ^ [X: product_prod_int_int,Y4: product_prod_int_int] : ( product_Pair_int_int @ ( plus_plus_int @ ( times_times_int @ ( product_fst_int_int @ X ) @ ( product_snd_int_int @ Y4 ) ) @ ( times_times_int @ ( product_fst_int_int @ Y4 ) @ ( product_snd_int_int @ X ) ) ) @ ( times_times_int @ ( product_snd_int_int @ X ) @ ( product_snd_int_int @ Y4 ) ) )
    @ plus_plus_rat ) ).

% plus_rat.transfer
thf(fact_5779_inverse__rat_Otransfer,axiom,
    ( bNF_re8279943556446156061nt_rat @ pcr_rat @ pcr_rat
    @ ^ [X: product_prod_int_int] :
        ( if_Pro3027730157355071871nt_int
        @ ( ( product_fst_int_int @ X )
          = zero_zero_int )
        @ ( product_Pair_int_int @ zero_zero_int @ one_one_int )
        @ ( product_Pair_int_int @ ( product_snd_int_int @ X ) @ ( product_fst_int_int @ X ) ) )
    @ inverse_inverse_rat ) ).

% inverse_rat.transfer
thf(fact_5780_one__rat_Otransfer,axiom,
    pcr_rat @ ( product_Pair_int_int @ one_one_int @ one_one_int ) @ one_one_rat ).

% one_rat.transfer
thf(fact_5781_zero__rat_Otransfer,axiom,
    pcr_rat @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ zero_zero_rat ).

% zero_rat.transfer
thf(fact_5782_Fract_Otransfer,axiom,
    ( bNF_re3461391660133120880nt_rat
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ( bNF_re2214769303045360666nt_rat
      @ ^ [Y3: int,Z: int] : Y3 = Z
      @ pcr_rat )
    @ ^ [A2: int,B2: int] : ( if_Pro3027730157355071871nt_int @ ( B2 = zero_zero_int ) @ ( product_Pair_int_int @ zero_zero_int @ one_one_int ) @ ( product_Pair_int_int @ A2 @ B2 ) )
    @ fract ) ).

% Fract.transfer
thf(fact_5783_uminus__rat_Otransfer,axiom,
    ( bNF_re8279943556446156061nt_rat @ pcr_rat @ pcr_rat
    @ ^ [X: product_prod_int_int] : ( product_Pair_int_int @ ( uminus_uminus_int @ ( product_fst_int_int @ X ) ) @ ( product_snd_int_int @ X ) )
    @ uminus_uminus_rat ) ).

% uminus_rat.transfer
thf(fact_5784_times__rat_Otransfer,axiom,
    ( bNF_re7627151682743391978at_rat @ pcr_rat @ ( bNF_re8279943556446156061nt_rat @ pcr_rat @ pcr_rat )
    @ ^ [X: product_prod_int_int,Y4: product_prod_int_int] : ( product_Pair_int_int @ ( times_times_int @ ( product_fst_int_int @ X ) @ ( product_fst_int_int @ Y4 ) ) @ ( times_times_int @ ( product_snd_int_int @ X ) @ ( product_snd_int_int @ Y4 ) ) )
    @ times_times_rat ) ).

% times_rat.transfer
thf(fact_5785_positive_Otransfer,axiom,
    ( bNF_re1494630372529172596at_o_o @ pcr_rat
    @ ^ [Y3: $o,Z: $o] : Y3 = Z
    @ ^ [X: product_prod_int_int] : ( ord_less_int @ zero_zero_int @ ( times_times_int @ ( product_fst_int_int @ X ) @ ( product_snd_int_int @ X ) ) )
    @ positive ) ).

% positive.transfer
thf(fact_5786_times__int_Otransfer,axiom,
    ( bNF_re7408651293131936558nt_int @ pcr_int @ ( bNF_re7400052026677387805at_int @ pcr_int @ pcr_int )
    @ ( produc27273713700761075at_nat
      @ ^ [X: nat,Y4: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V3: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ X @ U2 ) @ ( times_times_nat @ Y4 @ V3 ) ) @ ( plus_plus_nat @ ( times_times_nat @ X @ V3 ) @ ( times_times_nat @ Y4 @ U2 ) ) ) ) )
    @ times_times_int ) ).

% times_int.transfer
thf(fact_5787_zero__int_Otransfer,axiom,
    pcr_int @ ( product_Pair_nat_nat @ zero_zero_nat @ zero_zero_nat ) @ zero_zero_int ).

% zero_int.transfer
thf(fact_5788_int__transfer,axiom,
    ( bNF_re6830278522597306478at_int
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ pcr_int
    @ ^ [N3: nat] : ( product_Pair_nat_nat @ N3 @ zero_zero_nat )
    @ semiri1314217659103216013at_int ) ).

% int_transfer
thf(fact_5789_uminus__int_Otransfer,axiom,
    ( bNF_re7400052026677387805at_int @ pcr_int @ pcr_int
    @ ( produc2626176000494625587at_nat
      @ ^ [X: nat,Y4: nat] : ( product_Pair_nat_nat @ Y4 @ X ) )
    @ uminus_uminus_int ) ).

% uminus_int.transfer
thf(fact_5790_nat_Otransfer,axiom,
    ( bNF_re4555766996558763186at_nat @ pcr_int
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( produc6842872674320459806at_nat @ minus_minus_nat )
    @ nat2 ) ).

% nat.transfer
thf(fact_5791_one__int_Otransfer,axiom,
    pcr_int @ ( product_Pair_nat_nat @ one_one_nat @ zero_zero_nat ) @ one_one_int ).

% one_int.transfer
thf(fact_5792_less__int_Otransfer,axiom,
    ( bNF_re717283939379294677_int_o @ pcr_int
    @ ( bNF_re6644619430987730960nt_o_o @ pcr_int
      @ ^ [Y3: $o,Z: $o] : Y3 = Z )
    @ ( produc8739625826339149834_nat_o
      @ ^ [X: nat,Y4: nat] :
          ( produc6081775807080527818_nat_o
          @ ^ [U2: nat,V3: nat] : ( ord_less_nat @ ( plus_plus_nat @ X @ V3 ) @ ( plus_plus_nat @ U2 @ Y4 ) ) ) )
    @ ord_less_int ) ).

% less_int.transfer
thf(fact_5793_less__eq__int_Otransfer,axiom,
    ( bNF_re717283939379294677_int_o @ pcr_int
    @ ( bNF_re6644619430987730960nt_o_o @ pcr_int
      @ ^ [Y3: $o,Z: $o] : Y3 = Z )
    @ ( produc8739625826339149834_nat_o
      @ ^ [X: nat,Y4: nat] :
          ( produc6081775807080527818_nat_o
          @ ^ [U2: nat,V3: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ X @ V3 ) @ ( plus_plus_nat @ U2 @ Y4 ) ) ) )
    @ ord_less_eq_int ) ).

% less_eq_int.transfer
thf(fact_5794_plus__int_Otransfer,axiom,
    ( bNF_re7408651293131936558nt_int @ pcr_int @ ( bNF_re7400052026677387805at_int @ pcr_int @ pcr_int )
    @ ( produc27273713700761075at_nat
      @ ^ [X: nat,Y4: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V3: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X @ U2 ) @ ( plus_plus_nat @ Y4 @ V3 ) ) ) )
    @ plus_plus_int ) ).

% plus_int.transfer
thf(fact_5795_minus__int_Otransfer,axiom,
    ( bNF_re7408651293131936558nt_int @ pcr_int @ ( bNF_re7400052026677387805at_int @ pcr_int @ pcr_int )
    @ ( produc27273713700761075at_nat
      @ ^ [X: nat,Y4: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V3: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X @ V3 ) @ ( plus_plus_nat @ Y4 @ U2 ) ) ) )
    @ minus_minus_int ) ).

% minus_int.transfer
thf(fact_5796_times__int_Orsp,axiom,
    ( bNF_re3099431351363272937at_nat @ intrel @ ( bNF_re2241393799969408733at_nat @ intrel @ intrel )
    @ ( produc27273713700761075at_nat
      @ ^ [X: nat,Y4: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V3: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ X @ U2 ) @ ( times_times_nat @ Y4 @ V3 ) ) @ ( plus_plus_nat @ ( times_times_nat @ X @ V3 ) @ ( times_times_nat @ Y4 @ U2 ) ) ) ) )
    @ ( produc27273713700761075at_nat
      @ ^ [X: nat,Y4: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V3: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ ( times_times_nat @ X @ U2 ) @ ( times_times_nat @ Y4 @ V3 ) ) @ ( plus_plus_nat @ ( times_times_nat @ X @ V3 ) @ ( times_times_nat @ Y4 @ U2 ) ) ) ) ) ) ).

% times_int.rsp
thf(fact_5797_intrel__iff,axiom,
    ! [X2: nat,Y: nat,U: nat,V: nat] :
      ( ( intrel @ ( product_Pair_nat_nat @ X2 @ Y ) @ ( product_Pair_nat_nat @ U @ V ) )
      = ( ( plus_plus_nat @ X2 @ V )
        = ( plus_plus_nat @ U @ Y ) ) ) ).

% intrel_iff
thf(fact_5798_int_Orel__eq__transfer,axiom,
    ( bNF_re717283939379294677_int_o @ pcr_int
    @ ( bNF_re6644619430987730960nt_o_o @ pcr_int
      @ ^ [Y3: $o,Z: $o] : Y3 = Z )
    @ intrel
    @ ^ [Y3: int,Z: int] : Y3 = Z ) ).

% int.rel_eq_transfer
thf(fact_5799_zero__int_Orsp,axiom,
    intrel @ ( product_Pair_nat_nat @ zero_zero_nat @ zero_zero_nat ) @ ( product_Pair_nat_nat @ zero_zero_nat @ zero_zero_nat ) ).

% zero_int.rsp
thf(fact_5800_int_Oabs__eq__iff,axiom,
    ! [X2: product_prod_nat_nat,Y: product_prod_nat_nat] :
      ( ( ( abs_Integ @ X2 )
        = ( abs_Integ @ Y ) )
      = ( intrel @ X2 @ Y ) ) ).

% int.abs_eq_iff
thf(fact_5801_uminus__int_Orsp,axiom,
    ( bNF_re2241393799969408733at_nat @ intrel @ intrel
    @ ( produc2626176000494625587at_nat
      @ ^ [X: nat,Y4: nat] : ( product_Pair_nat_nat @ Y4 @ X ) )
    @ ( produc2626176000494625587at_nat
      @ ^ [X: nat,Y4: nat] : ( product_Pair_nat_nat @ Y4 @ X ) ) ) ).

% uminus_int.rsp
thf(fact_5802_nat_Orsp,axiom,
    ( bNF_re8246922863344978751at_nat @ intrel
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( produc6842872674320459806at_nat @ minus_minus_nat )
    @ ( produc6842872674320459806at_nat @ minus_minus_nat ) ) ).

% nat.rsp
thf(fact_5803_one__int_Orsp,axiom,
    intrel @ ( product_Pair_nat_nat @ one_one_nat @ zero_zero_nat ) @ ( product_Pair_nat_nat @ one_one_nat @ zero_zero_nat ) ).

% one_int.rsp
thf(fact_5804_intrel__def,axiom,
    ( intrel
    = ( produc8739625826339149834_nat_o
      @ ^ [X: nat,Y4: nat] :
          ( produc6081775807080527818_nat_o
          @ ^ [U2: nat,V3: nat] :
              ( ( plus_plus_nat @ X @ V3 )
              = ( plus_plus_nat @ U2 @ Y4 ) ) ) ) ) ).

% intrel_def
thf(fact_5805_less__int_Orsp,axiom,
    ( bNF_re4202695980764964119_nat_o @ intrel
    @ ( bNF_re3666534408544137501at_o_o @ intrel
      @ ^ [Y3: $o,Z: $o] : Y3 = Z )
    @ ( produc8739625826339149834_nat_o
      @ ^ [X: nat,Y4: nat] :
          ( produc6081775807080527818_nat_o
          @ ^ [U2: nat,V3: nat] : ( ord_less_nat @ ( plus_plus_nat @ X @ V3 ) @ ( plus_plus_nat @ U2 @ Y4 ) ) ) )
    @ ( produc8739625826339149834_nat_o
      @ ^ [X: nat,Y4: nat] :
          ( produc6081775807080527818_nat_o
          @ ^ [U2: nat,V3: nat] : ( ord_less_nat @ ( plus_plus_nat @ X @ V3 ) @ ( plus_plus_nat @ U2 @ Y4 ) ) ) ) ) ).

% less_int.rsp
thf(fact_5806_less__eq__int_Orsp,axiom,
    ( bNF_re4202695980764964119_nat_o @ intrel
    @ ( bNF_re3666534408544137501at_o_o @ intrel
      @ ^ [Y3: $o,Z: $o] : Y3 = Z )
    @ ( produc8739625826339149834_nat_o
      @ ^ [X: nat,Y4: nat] :
          ( produc6081775807080527818_nat_o
          @ ^ [U2: nat,V3: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ X @ V3 ) @ ( plus_plus_nat @ U2 @ Y4 ) ) ) )
    @ ( produc8739625826339149834_nat_o
      @ ^ [X: nat,Y4: nat] :
          ( produc6081775807080527818_nat_o
          @ ^ [U2: nat,V3: nat] : ( ord_less_eq_nat @ ( plus_plus_nat @ X @ V3 ) @ ( plus_plus_nat @ U2 @ Y4 ) ) ) ) ) ).

% less_eq_int.rsp
thf(fact_5807_minus__int_Orsp,axiom,
    ( bNF_re3099431351363272937at_nat @ intrel @ ( bNF_re2241393799969408733at_nat @ intrel @ intrel )
    @ ( produc27273713700761075at_nat
      @ ^ [X: nat,Y4: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V3: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X @ V3 ) @ ( plus_plus_nat @ Y4 @ U2 ) ) ) )
    @ ( produc27273713700761075at_nat
      @ ^ [X: nat,Y4: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V3: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X @ V3 ) @ ( plus_plus_nat @ Y4 @ U2 ) ) ) ) ) ).

% minus_int.rsp
thf(fact_5808_plus__int_Orsp,axiom,
    ( bNF_re3099431351363272937at_nat @ intrel @ ( bNF_re2241393799969408733at_nat @ intrel @ intrel )
    @ ( produc27273713700761075at_nat
      @ ^ [X: nat,Y4: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V3: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X @ U2 ) @ ( plus_plus_nat @ Y4 @ V3 ) ) ) )
    @ ( produc27273713700761075at_nat
      @ ^ [X: nat,Y4: nat] :
          ( produc2626176000494625587at_nat
          @ ^ [U2: nat,V3: nat] : ( product_Pair_nat_nat @ ( plus_plus_nat @ X @ U2 ) @ ( plus_plus_nat @ Y4 @ V3 ) ) ) ) ) ).

% plus_int.rsp
thf(fact_5809_le__enumerate,axiom,
    ! [S3: set_nat,N: nat] :
      ( ~ ( finite_finite_nat @ S3 )
     => ( ord_less_eq_nat @ N @ ( infini8530281810654367211te_nat @ S3 @ N ) ) ) ).

% le_enumerate
thf(fact_5810_finite__le__enumerate,axiom,
    ! [S3: set_nat,N: nat] :
      ( ( finite_finite_nat @ S3 )
     => ( ( ord_less_nat @ N @ ( finite_card_nat @ S3 ) )
       => ( ord_less_eq_nat @ N @ ( infini8530281810654367211te_nat @ S3 @ N ) ) ) ) ).

% finite_le_enumerate
thf(fact_5811_Least__eq__0,axiom,
    ! [P: nat > $o] :
      ( ( P @ zero_zero_nat )
     => ( ( ord_Least_nat @ P )
        = zero_zero_nat ) ) ).

% Least_eq_0
thf(fact_5812_Least__Suc2,axiom,
    ! [P: nat > $o,N: nat,Q: nat > $o,M: nat] :
      ( ( P @ N )
     => ( ( Q @ M )
       => ( ~ ( P @ zero_zero_nat )
         => ( ! [K3: nat] :
                ( ( P @ ( suc @ K3 ) )
                = ( Q @ K3 ) )
           => ( ( ord_Least_nat @ P )
              = ( suc @ ( ord_Least_nat @ Q ) ) ) ) ) ) ) ).

% Least_Suc2
thf(fact_5813_Least__Suc,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ( ( ord_Least_nat @ P )
          = ( suc
            @ ( ord_Least_nat
              @ ^ [M2: nat] : ( P @ ( suc @ M2 ) ) ) ) ) ) ) ).

% Least_Suc
thf(fact_5814_Inf__nat__def,axiom,
    ( complete_Inf_Inf_nat
    = ( ^ [X5: set_nat] :
          ( ord_Least_nat
          @ ^ [N3: nat] : ( member_nat @ N3 @ X5 ) ) ) ) ).

% Inf_nat_def
thf(fact_5815_type__definition__integer,axiom,
    type_d8366093980585677751er_int @ code_int_of_integer @ code_integer_of_int @ top_top_set_int ).

% type_definition_integer
thf(fact_5816_mset__set__upto__eq__mset__upto,axiom,
    ! [N: nat] :
      ( ( mset_set_nat @ ( set_ord_lessThan_nat @ N ) )
      = ( mset_nat @ ( upt @ zero_zero_nat @ N ) ) ) ).

% mset_set_upto_eq_mset_upto
thf(fact_5817_filterlim__lessThan__at__top,axiom,
    filter3212408913953519116et_nat @ set_ord_lessThan_nat @ ( finite3254316476582989077op_nat @ top_top_set_nat ) @ at_top_nat ).

% filterlim_lessThan_at_top
thf(fact_5818_filterlim__atMost__at__top,axiom,
    filter3212408913953519116et_nat @ set_ord_atMost_nat @ ( finite3254316476582989077op_nat @ top_top_set_nat ) @ at_top_nat ).

% filterlim_atMost_at_top
thf(fact_5819_bij__betw__Suc,axiom,
    ! [M3: set_nat,N4: set_nat] :
      ( ( bij_betw_nat_nat @ suc @ M3 @ N4 )
      = ( ( image_nat_nat @ suc @ M3 )
        = N4 ) ) ).

% bij_betw_Suc
thf(fact_5820_Sup__int__def,axiom,
    ( complete_Sup_Sup_int
    = ( ^ [X5: set_int] :
          ( the_int
          @ ^ [X: int] :
              ( ( member_int @ X @ X5 )
              & ! [Y4: int] :
                  ( ( member_int @ Y4 @ X5 )
                 => ( ord_less_eq_int @ Y4 @ X ) ) ) ) ) ) ).

% Sup_int_def
thf(fact_5821_and__not__num_Opelims,axiom,
    ! [X2: num,Xa: num,Y: option_num] :
      ( ( ( bit_and_not_num @ X2 @ Xa )
        = Y )
     => ( ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ X2 @ Xa ) )
       => ( ( ( X2 = one )
           => ( ( Xa = one )
             => ( ( Y = none_num )
               => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ one @ one ) ) ) ) )
         => ( ( ( X2 = one )
             => ! [N2: num] :
                  ( ( Xa
                    = ( bit0 @ N2 ) )
                 => ( ( Y
                      = ( some_num @ one ) )
                   => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ one @ ( bit0 @ N2 ) ) ) ) ) )
           => ( ( ( X2 = one )
               => ! [N2: num] :
                    ( ( Xa
                      = ( bit1 @ N2 ) )
                   => ( ( Y = none_num )
                     => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ one @ ( bit1 @ N2 ) ) ) ) ) )
             => ( ! [M4: num] :
                    ( ( X2
                      = ( bit0 @ M4 ) )
                   => ( ( Xa = one )
                     => ( ( Y
                          = ( some_num @ ( bit0 @ M4 ) ) )
                       => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ ( bit0 @ M4 ) @ one ) ) ) ) )
               => ( ! [M4: num] :
                      ( ( X2
                        = ( bit0 @ M4 ) )
                     => ! [N2: num] :
                          ( ( Xa
                            = ( bit0 @ N2 ) )
                         => ( ( Y
                              = ( map_option_num_num @ bit0 @ ( bit_and_not_num @ M4 @ N2 ) ) )
                           => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ ( bit0 @ M4 ) @ ( bit0 @ N2 ) ) ) ) ) )
                 => ( ! [M4: num] :
                        ( ( X2
                          = ( bit0 @ M4 ) )
                       => ! [N2: num] :
                            ( ( Xa
                              = ( bit1 @ N2 ) )
                           => ( ( Y
                                = ( map_option_num_num @ bit0 @ ( bit_and_not_num @ M4 @ N2 ) ) )
                             => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ ( bit0 @ M4 ) @ ( bit1 @ N2 ) ) ) ) ) )
                   => ( ! [M4: num] :
                          ( ( X2
                            = ( bit1 @ M4 ) )
                         => ( ( Xa = one )
                           => ( ( Y
                                = ( some_num @ ( bit0 @ M4 ) ) )
                             => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ ( bit1 @ M4 ) @ one ) ) ) ) )
                     => ( ! [M4: num] :
                            ( ( X2
                              = ( bit1 @ M4 ) )
                           => ! [N2: num] :
                                ( ( Xa
                                  = ( bit0 @ N2 ) )
                               => ( ( Y
                                    = ( case_o6005452278849405969um_num @ ( some_num @ one )
                                      @ ^ [N9: num] : ( some_num @ ( bit1 @ N9 ) )
                                      @ ( bit_and_not_num @ M4 @ N2 ) ) )
                                 => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ ( bit1 @ M4 ) @ ( bit0 @ N2 ) ) ) ) ) )
                       => ~ ! [M4: num] :
                              ( ( X2
                                = ( bit1 @ M4 ) )
                             => ! [N2: num] :
                                  ( ( Xa
                                    = ( bit1 @ N2 ) )
                                 => ( ( Y
                                      = ( map_option_num_num @ bit0 @ ( bit_and_not_num @ M4 @ N2 ) ) )
                                   => ~ ( accp_P3113834385874906142um_num @ bit_and_not_num_rel @ ( product_Pair_num_num @ ( bit1 @ M4 ) @ ( bit1 @ N2 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% and_not_num.pelims
thf(fact_5822_and__num_Opelims,axiom,
    ! [X2: num,Xa: num,Y: option_num] :
      ( ( ( bit_un7362597486090784418nd_num @ X2 @ Xa )
        = Y )
     => ( ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ X2 @ Xa ) )
       => ( ( ( X2 = one )
           => ( ( Xa = one )
             => ( ( Y
                  = ( some_num @ one ) )
               => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ one @ one ) ) ) ) )
         => ( ( ( X2 = one )
             => ! [N2: num] :
                  ( ( Xa
                    = ( bit0 @ N2 ) )
                 => ( ( Y = none_num )
                   => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ one @ ( bit0 @ N2 ) ) ) ) ) )
           => ( ( ( X2 = one )
               => ! [N2: num] :
                    ( ( Xa
                      = ( bit1 @ N2 ) )
                   => ( ( Y
                        = ( some_num @ one ) )
                     => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ one @ ( bit1 @ N2 ) ) ) ) ) )
             => ( ! [M4: num] :
                    ( ( X2
                      = ( bit0 @ M4 ) )
                   => ( ( Xa = one )
                     => ( ( Y = none_num )
                       => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ ( bit0 @ M4 ) @ one ) ) ) ) )
               => ( ! [M4: num] :
                      ( ( X2
                        = ( bit0 @ M4 ) )
                     => ! [N2: num] :
                          ( ( Xa
                            = ( bit0 @ N2 ) )
                         => ( ( Y
                              = ( map_option_num_num @ bit0 @ ( bit_un7362597486090784418nd_num @ M4 @ N2 ) ) )
                           => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ ( bit0 @ M4 ) @ ( bit0 @ N2 ) ) ) ) ) )
                 => ( ! [M4: num] :
                        ( ( X2
                          = ( bit0 @ M4 ) )
                       => ! [N2: num] :
                            ( ( Xa
                              = ( bit1 @ N2 ) )
                           => ( ( Y
                                = ( map_option_num_num @ bit0 @ ( bit_un7362597486090784418nd_num @ M4 @ N2 ) ) )
                             => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ ( bit0 @ M4 ) @ ( bit1 @ N2 ) ) ) ) ) )
                   => ( ! [M4: num] :
                          ( ( X2
                            = ( bit1 @ M4 ) )
                         => ( ( Xa = one )
                           => ( ( Y
                                = ( some_num @ one ) )
                             => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ ( bit1 @ M4 ) @ one ) ) ) ) )
                     => ( ! [M4: num] :
                            ( ( X2
                              = ( bit1 @ M4 ) )
                           => ! [N2: num] :
                                ( ( Xa
                                  = ( bit0 @ N2 ) )
                               => ( ( Y
                                    = ( map_option_num_num @ bit0 @ ( bit_un7362597486090784418nd_num @ M4 @ N2 ) ) )
                                 => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ ( bit1 @ M4 ) @ ( bit0 @ N2 ) ) ) ) ) )
                       => ~ ! [M4: num] :
                              ( ( X2
                                = ( bit1 @ M4 ) )
                             => ! [N2: num] :
                                  ( ( Xa
                                    = ( bit1 @ N2 ) )
                                 => ( ( Y
                                      = ( case_o6005452278849405969um_num @ ( some_num @ one )
                                        @ ^ [N9: num] : ( some_num @ ( bit1 @ N9 ) )
                                        @ ( bit_un7362597486090784418nd_num @ M4 @ N2 ) ) )
                                   => ~ ( accp_P3113834385874906142um_num @ bit_un4731106466462545111um_rel @ ( product_Pair_num_num @ ( bit1 @ M4 ) @ ( bit1 @ N2 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% and_num.pelims
thf(fact_5823_int_Obi__total,axiom,
    bi_tot896582865486249351at_int @ pcr_int ).

% int.bi_total
thf(fact_5824_Domainp__cr__rat,axiom,
    ( ( domain9213661015745956397nt_rat @ pcr_rat )
    = ( ^ [X: product_prod_int_int] :
          ( ( product_snd_int_int @ X )
         != zero_zero_int ) ) ) ).

% Domainp_cr_rat
thf(fact_5825_eventually__sequentially__Suc,axiom,
    ! [P: nat > $o] :
      ( ( eventually_nat
        @ ^ [I2: nat] : ( P @ ( suc @ I2 ) )
        @ at_top_nat )
      = ( eventually_nat @ P @ at_top_nat ) ) ).

% eventually_sequentially_Suc
thf(fact_5826_eventually__sequentially__seg,axiom,
    ! [P: nat > $o,K: nat] :
      ( ( eventually_nat
        @ ^ [N3: nat] : ( P @ ( plus_plus_nat @ N3 @ K ) )
        @ at_top_nat )
      = ( eventually_nat @ P @ at_top_nat ) ) ).

% eventually_sequentially_seg
thf(fact_5827_eventually__sequentially,axiom,
    ! [P: nat > $o] :
      ( ( eventually_nat @ P @ at_top_nat )
      = ( ? [N8: nat] :
          ! [N3: nat] :
            ( ( ord_less_eq_nat @ N8 @ N3 )
           => ( P @ N3 ) ) ) ) ).

% eventually_sequentially
thf(fact_5828_eventually__sequentiallyI,axiom,
    ! [C: nat,P: nat > $o] :
      ( ! [X3: nat] :
          ( ( ord_less_eq_nat @ C @ X3 )
         => ( P @ X3 ) )
     => ( eventually_nat @ P @ at_top_nat ) ) ).

% eventually_sequentiallyI
thf(fact_5829_le__sequentially,axiom,
    ! [F4: filter_nat] :
      ( ( ord_le2510731241096832064er_nat @ F4 @ at_top_nat )
      = ( ! [N8: nat] : ( eventually_nat @ ( ord_less_eq_nat @ N8 ) @ F4 ) ) ) ).

% le_sequentially
thf(fact_5830_eventually__False__sequentially,axiom,
    ~ ( eventually_nat
      @ ^ [N3: nat] : $false
      @ at_top_nat ) ).

% eventually_False_sequentially
thf(fact_5831_int_Oright__total,axiom,
    right_1157779049177982926at_int @ pcr_int ).

% int.right_total
thf(fact_5832_pair__lessI2,axiom,
    ! [A: nat,B: nat,S: nat,T: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ S @ T )
       => ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ A @ S ) @ ( product_Pair_nat_nat @ B @ T ) ) @ fun_pair_less ) ) ) ).

% pair_lessI2
thf(fact_5833_pair__leqI2,axiom,
    ! [A: nat,B: nat,S: nat,T: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ S @ T )
       => ( member8206827879206165904at_nat @ ( produc6161850002892822231at_nat @ ( product_Pair_nat_nat @ A @ S ) @ ( product_Pair_nat_nat @ B @ T ) ) @ fun_pair_leq ) ) ) ).

% pair_leqI2
thf(fact_5834_euclidean__size__integer_Orep__eq,axiom,
    ( euclid6377331345833325938nteger
    = ( ^ [X: code_integer] : ( euclid4774559944035922753ze_int @ ( code_int_of_integer @ X ) ) ) ) ).

% euclidean_size_integer.rep_eq
thf(fact_5835_euclidean__size__integer__def,axiom,
    ( euclid6377331345833325938nteger
    = ( map_fu6539832666145259331at_nat @ code_int_of_integer @ id_nat @ euclid4774559944035922753ze_int ) ) ).

% euclidean_size_integer_def
thf(fact_5836_euclidean__size__integer_Oabs__eq,axiom,
    ! [X2: int] :
      ( ( euclid6377331345833325938nteger @ ( code_integer_of_int @ X2 ) )
      = ( euclid4774559944035922753ze_int @ X2 ) ) ).

% euclidean_size_integer.abs_eq
thf(fact_5837_euclidean__size__natural_Orsp,axiom,
    ( bNF_re5653821019739307937at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ euclid4777050414544973029ze_nat
    @ euclid4777050414544973029ze_nat ) ).

% euclidean_size_natural.rsp
thf(fact_5838_euclidean__size__integer_Orsp,axiom,
    ( bNF_re3715656647883201625at_nat
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ euclid4774559944035922753ze_int
    @ euclid4774559944035922753ze_int ) ).

% euclidean_size_integer.rsp
thf(fact_5839_division__segment__integer_Orep__eq,axiom,
    ! [X2: code_integer] :
      ( ( code_int_of_integer @ ( euclid6289375185220004616nteger @ X2 ) )
      = ( euclid3395696857347342551nt_int @ ( code_int_of_integer @ X2 ) ) ) ).

% division_segment_integer.rep_eq
thf(fact_5840_abs__division__segment,axiom,
    ! [K: int] :
      ( ( abs_abs_int @ ( euclid3395696857347342551nt_int @ K ) )
      = one_one_int ) ).

% abs_division_segment
thf(fact_5841_division__segment__integer_Orsp,axiom,
    ( bNF_re4712519889275205905nt_int
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ euclid3395696857347342551nt_int
    @ euclid3395696857347342551nt_int ) ).

% division_segment_integer.rsp
thf(fact_5842_division__segment__natural_Orsp,axiom,
    ( bNF_re5653821019739307937at_nat
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ euclid3398187327856392827nt_nat
    @ euclid3398187327856392827nt_nat ) ).

% division_segment_natural.rsp
thf(fact_5843_division__segment__nat__def,axiom,
    ( euclid3398187327856392827nt_nat
    = ( ^ [N3: nat] : one_one_nat ) ) ).

% division_segment_nat_def
thf(fact_5844_division__segment__integer_Oabs__eq,axiom,
    ! [X2: int] :
      ( ( euclid6289375185220004616nteger @ ( code_integer_of_int @ X2 ) )
      = ( code_integer_of_int @ ( euclid3395696857347342551nt_int @ X2 ) ) ) ).

% division_segment_integer.abs_eq
thf(fact_5845_division__segment__eq__sgn,axiom,
    ! [K: int] :
      ( ( K != zero_zero_int )
     => ( ( euclid3395696857347342551nt_int @ K )
        = ( sgn_sgn_int @ K ) ) ) ).

% division_segment_eq_sgn
thf(fact_5846_division__segment__integer__def,axiom,
    ( euclid6289375185220004616nteger
    = ( map_fu2599414010547811884nteger @ code_int_of_integer @ code_integer_of_int @ euclid3395696857347342551nt_int ) ) ).

% division_segment_integer_def
thf(fact_5847_division__segment__int__def,axiom,
    ( euclid3395696857347342551nt_int
    = ( ^ [K2: int] : ( if_int @ ( ord_less_eq_int @ zero_zero_int @ K2 ) @ one_one_int @ ( uminus_uminus_int @ one_one_int ) ) ) ) ).

% division_segment_int_def
thf(fact_5848_wf__int__ge__less__than2,axiom,
    ! [D: int] : ( wf_int @ ( int_ge_less_than2 @ D ) ) ).

% wf_int_ge_less_than2
thf(fact_5849_wf__int__ge__less__than,axiom,
    ! [D: int] : ( wf_int @ ( int_ge_less_than @ D ) ) ).

% wf_int_ge_less_than
thf(fact_5850_wf__less,axiom,
    wf_nat @ ( collec3392354462482085612at_nat @ ( produc6081775807080527818_nat_o @ ord_less_nat ) ) ).

% wf_less
thf(fact_5851_num__of__integer_Otransfer,axiom,
    ( bNF_re6718328864250387230um_num @ code_pcr_integer
    @ ^ [Y3: num,Z: num] : Y3 = Z
    @ ( comp_nat_num_int @ num_of_nat @ nat2 )
    @ code_num_of_integer ) ).

% num_of_integer.transfer
thf(fact_5852_euclidean__size__integer_Otransfer,axiom,
    ( bNF_re2807294637932363402at_nat @ code_pcr_integer
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ euclid4774559944035922753ze_int
    @ euclid6377331345833325938nteger ) ).

% euclidean_size_integer.transfer
thf(fact_5853_integer_Oleft__unique,axiom,
    left_u6795595883297946906nteger @ code_pcr_integer ).

% integer.left_unique
thf(fact_5854_zero__integer_Otransfer,axiom,
    code_pcr_integer @ zero_zero_int @ zero_z3403309356797280102nteger ).

% zero_integer.transfer
thf(fact_5855_one__integer_Otransfer,axiom,
    code_pcr_integer @ one_one_int @ one_one_Code_integer ).

% one_integer.transfer
thf(fact_5856_integer_Obi__unique,axiom,
    bi_uni8663861020805155098nteger @ code_pcr_integer ).

% integer.bi_unique
thf(fact_5857_integer_Odomain,axiom,
    ! [P: int > $o] :
      ( ( ( domainp_int_int
          @ ^ [Y3: int,Z: int] : Y3 = Z )
        = P )
     => ( ( domain452967906960104687nteger @ code_pcr_integer )
        = P ) ) ).

% integer.domain
thf(fact_5858_integer_Obi__total,axiom,
    bi_tot1331153423839324337nteger @ code_pcr_integer ).

% integer.bi_total
thf(fact_5859_flip__bit__integer_Otransfer,axiom,
    ( bNF_re4935368626670024657nteger
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer )
    @ bit_se2159334234014336723it_int
    @ bit_se1345352211410354436nteger ) ).

% flip_bit_integer.transfer
thf(fact_5860_push__bit__integer_Otransfer,axiom,
    ( bNF_re4935368626670024657nteger
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer )
    @ bit_se545348938243370406it_int
    @ bit_se7788150548672797655nteger ) ).

% push_bit_integer.transfer
thf(fact_5861_drop__bit__integer_Otransfer,axiom,
    ( bNF_re4935368626670024657nteger
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer )
    @ bit_se8568078237143864401it_int
    @ bit_se3928097537394005634nteger ) ).

% drop_bit_integer.transfer
thf(fact_5862_xor__integer_Otransfer,axiom,
    bNF_re398004352372739002nteger @ code_pcr_integer @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer ) @ bit_se6526347334894502574or_int @ bit_se3222712562003087583nteger ).

% xor_integer.transfer
thf(fact_5863_bit__integer_Otransfer,axiom,
    ( bNF_re4711666741709854504_nat_o @ code_pcr_integer
    @ ^ [Y3: nat > $o,Z: nat > $o] : Y3 = Z
    @ bit_se1146084159140164899it_int
    @ bit_se9216721137139052372nteger ) ).

% bit_integer.transfer
thf(fact_5864_or__integer_Otransfer,axiom,
    bNF_re398004352372739002nteger @ code_pcr_integer @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer ) @ bit_se1409905431419307370or_int @ bit_se1080825931792720795nteger ).

% or_integer.transfer
thf(fact_5865_take__bit__integer_Otransfer,axiom,
    ( bNF_re4935368626670024657nteger
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer )
    @ bit_se2923211474154528505it_int
    @ bit_se1745604003318907178nteger ) ).

% take_bit_integer.transfer
thf(fact_5866_not__integer_Otransfer,axiom,
    bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer @ bit_ri7919022796975470100ot_int @ bit_ri7632146776885996613nteger ).

% not_integer.transfer
thf(fact_5867_and__integer_Otransfer,axiom,
    bNF_re398004352372739002nteger @ code_pcr_integer @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer ) @ bit_se725231765392027082nd_int @ bit_se3949692690581998587nteger ).

% and_integer.transfer
thf(fact_5868_dup_Otransfer,axiom,
    ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer
    @ ^ [K2: int] : ( plus_plus_int @ K2 @ K2 )
    @ code_dup ) ).

% dup.transfer
thf(fact_5869_integer__of__nat_Otransfer,axiom,
    ( bNF_re4153400068438556298nteger
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ code_pcr_integer
    @ semiri1314217659103216013at_int
    @ code_integer_of_nat ) ).

% integer_of_nat.transfer
thf(fact_5870_less__integer_Otransfer,axiom,
    ( bNF_re6321650412969554871eger_o @ code_pcr_integer
    @ ( bNF_re6574881592172037608er_o_o @ code_pcr_integer
      @ ^ [Y3: $o,Z: $o] : Y3 = Z )
    @ ord_less_int
    @ ord_le6747313008572928689nteger ) ).

% less_integer.transfer
thf(fact_5871_times__integer_Otransfer,axiom,
    bNF_re398004352372739002nteger @ code_pcr_integer @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer ) @ times_times_int @ times_3573771949741848930nteger ).

% times_integer.transfer
thf(fact_5872_divide__integer_Otransfer,axiom,
    bNF_re398004352372739002nteger @ code_pcr_integer @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer ) @ divide_divide_int @ divide6298287555418463151nteger ).

% divide_integer.transfer
thf(fact_5873_abs__integer_Otransfer,axiom,
    bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer @ abs_abs_int @ abs_abs_Code_integer ).

% abs_integer.transfer
thf(fact_5874_nat__of__integer_Otransfer,axiom,
    ( bNF_re2807294637932363402at_nat @ code_pcr_integer
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ nat2
    @ code_nat_of_integer ) ).

% nat_of_integer.transfer
thf(fact_5875_modulo__integer_Otransfer,axiom,
    bNF_re398004352372739002nteger @ code_pcr_integer @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer ) @ modulo_modulo_int @ modulo364778990260209775nteger ).

% modulo_integer.transfer
thf(fact_5876_plus__integer_Otransfer,axiom,
    bNF_re398004352372739002nteger @ code_pcr_integer @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer ) @ plus_plus_int @ plus_p5714425477246183910nteger ).

% plus_integer.transfer
thf(fact_5877_sgn__integer_Otransfer,axiom,
    bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer @ sgn_sgn_int @ sgn_sgn_Code_integer ).

% sgn_integer.transfer
thf(fact_5878_integer_Orep__transfer,axiom,
    ( bNF_re3804157879324367682nt_int @ code_pcr_integer
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ ^ [X: int] : X
    @ code_int_of_integer ) ).

% integer.rep_transfer
thf(fact_5879_integer_Oid__abs__transfer,axiom,
    ( bNF_re982302072995117890nteger
    @ ^ [Y3: int,Z: int] : Y3 = Z
    @ code_pcr_integer
    @ ^ [X: int] : X
    @ code_integer_of_int ) ).

% integer.id_abs_transfer
thf(fact_5880_gcd__integer_Otransfer,axiom,
    bNF_re398004352372739002nteger @ code_pcr_integer @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer ) @ gcd_gcd_int @ gcd_gcd_Code_integer ).

% gcd_integer.transfer
thf(fact_5881_minus__integer_Otransfer,axiom,
    bNF_re398004352372739002nteger @ code_pcr_integer @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer ) @ minus_minus_int @ minus_8373710615458151222nteger ).

% minus_integer.transfer
thf(fact_5882_uminus__integer_Otransfer,axiom,
    bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer @ uminus_uminus_int @ uminus1351360451143612070nteger ).

% uminus_integer.transfer
thf(fact_5883_mask__integer_Otransfer,axiom,
    ( bNF_re4153400068438556298nteger
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ code_pcr_integer
    @ bit_se2000444600071755411sk_int
    @ bit_se2119862282449309892nteger ) ).

% mask_integer.transfer
thf(fact_5884_unset__bit__integer_Otransfer,axiom,
    ( bNF_re4935368626670024657nteger
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer )
    @ bit_se4203085406695923979it_int
    @ bit_se8260200283734997820nteger ) ).

% unset_bit_integer.transfer
thf(fact_5885_set__bit__integer_Otransfer,axiom,
    ( bNF_re4935368626670024657nteger
    @ ^ [Y3: nat,Z: nat] : Y3 = Z
    @ ( bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer )
    @ bit_se7879613467334960850it_int
    @ bit_se2793503036327961859nteger ) ).

% set_bit_integer.transfer
thf(fact_5886_integer_Oright__total,axiom,
    right_7281159819619925802nteger @ code_pcr_integer ).

% integer.right_total
thf(fact_5887_less__eq__integer_Otransfer,axiom,
    ( bNF_re6321650412969554871eger_o @ code_pcr_integer
    @ ( bNF_re6574881592172037608er_o_o @ code_pcr_integer
      @ ^ [Y3: $o,Z: $o] : Y3 = Z )
    @ ord_less_eq_int
    @ ord_le3102999989581377725nteger ) ).

% less_eq_integer.transfer
thf(fact_5888_division__segment__integer_Otransfer,axiom,
    bNF_re3379532845092657523nteger @ code_pcr_integer @ code_pcr_integer @ euclid3395696857347342551nt_int @ euclid6289375185220004616nteger ).

% division_segment_integer.transfer
thf(fact_5889_sub_Otransfer,axiom,
    ( bNF_re7876454716742015248nteger
    @ ^ [Y3: num,Z: num] : Y3 = Z
    @ ( bNF_re6501075790457514782nteger
      @ ^ [Y3: num,Z: num] : Y3 = Z
      @ code_pcr_integer )
    @ ^ [M2: num,N3: num] : ( minus_minus_int @ ( numeral_numeral_int @ M2 ) @ ( numeral_numeral_int @ N3 ) )
    @ code_sub ) ).

% sub.transfer
thf(fact_5890_eventually__prod__sequentially,axiom,
    ! [P: product_prod_nat_nat > $o] :
      ( ( eventu1038000079068216329at_nat @ P @ ( prod_filter_nat_nat @ at_top_nat @ at_top_nat ) )
      = ( ? [N8: nat] :
          ! [M2: nat] :
            ( ( ord_less_eq_nat @ N8 @ M2 )
           => ! [N3: nat] :
                ( ( ord_less_eq_nat @ N8 @ N3 )
               => ( P @ ( product_Pair_nat_nat @ N3 @ M2 ) ) ) ) ) ) ).

% eventually_prod_sequentially
thf(fact_5891_UNIV__char__of__nat,axiom,
    ( top_top_set_char
    = ( image_nat_char @ unique3096191561947761185of_nat @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ) ).

% UNIV_char_of_nat
thf(fact_5892_inj__on__char__of__nat,axiom,
    inj_on_nat_char @ unique3096191561947761185of_nat @ ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ).

% inj_on_char_of_nat
thf(fact_5893_range__nat__of__char,axiom,
    ( ( image_char_nat @ comm_s629917340098488124ar_nat @ top_top_set_char )
    = ( set_or4665077453230672383an_nat @ zero_zero_nat @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ).

% range_nat_of_char
thf(fact_5894_char_Osize_I2_J,axiom,
    ! [X12: $o,X22: $o,X32: $o,X42: $o,X52: $o,X62: $o,X72: $o,X8: $o] :
      ( ( size_size_char @ ( char2 @ X12 @ X22 @ X32 @ X42 @ X52 @ X62 @ X72 @ X8 ) )
      = zero_zero_nat ) ).

% char.size(2)
thf(fact_5895_integer__of__char__code,axiom,
    ! [B0: $o,B1: $o,B22: $o,B32: $o,B42: $o,B52: $o,B6: $o,B7: $o] :
      ( ( integer_of_char @ ( char2 @ B0 @ B1 @ B22 @ B32 @ B42 @ B52 @ B6 @ B7 ) )
      = ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( plus_p5714425477246183910nteger @ ( times_3573771949741848930nteger @ ( zero_n356916108424825756nteger @ B7 ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( zero_n356916108424825756nteger @ B6 ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( zero_n356916108424825756nteger @ B52 ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( zero_n356916108424825756nteger @ B42 ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( zero_n356916108424825756nteger @ B32 ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( zero_n356916108424825756nteger @ B22 ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( zero_n356916108424825756nteger @ B1 ) ) @ ( numera6620942414471956472nteger @ ( bit0 @ one ) ) ) @ ( zero_n356916108424825756nteger @ B0 ) ) ) ).

% integer_of_char_code
thf(fact_5896_char_Osize__gen,axiom,
    ! [X12: $o,X22: $o,X32: $o,X42: $o,X52: $o,X62: $o,X72: $o,X8: $o] :
      ( ( size_char @ ( char2 @ X12 @ X22 @ X32 @ X42 @ X52 @ X62 @ X72 @ X8 ) )
      = zero_zero_nat ) ).

% char.size_gen
thf(fact_5897_char__of__integer__code,axiom,
    ( char_of_integer
    = ( ^ [K2: code_integer] :
          ( produc4188289175737317920o_char
          @ ^ [Q0: code_integer,B02: $o] :
              ( produc4188289175737317920o_char
              @ ^ [Q1: code_integer,B12: $o] :
                  ( produc4188289175737317920o_char
                  @ ^ [Q22: code_integer,B23: $o] :
                      ( produc4188289175737317920o_char
                      @ ^ [Q32: code_integer,B33: $o] :
                          ( produc4188289175737317920o_char
                          @ ^ [Q42: code_integer,B43: $o] :
                              ( produc4188289175737317920o_char
                              @ ^ [Q52: code_integer,B53: $o] :
                                  ( produc4188289175737317920o_char
                                  @ ^ [Q62: code_integer,B62: $o] :
                                      ( produc4188289175737317920o_char
                                      @ ^ [Uu: code_integer] : ( char2 @ B02 @ B12 @ B23 @ B33 @ B43 @ B53 @ B62 )
                                      @ ( code_bit_cut_integer @ Q62 ) )
                                  @ ( code_bit_cut_integer @ Q52 ) )
                              @ ( code_bit_cut_integer @ Q42 ) )
                          @ ( code_bit_cut_integer @ Q32 ) )
                      @ ( code_bit_cut_integer @ Q22 ) )
                  @ ( code_bit_cut_integer @ Q1 ) )
              @ ( code_bit_cut_integer @ Q0 ) )
          @ ( code_bit_cut_integer @ K2 ) ) ) ) ).

% char_of_integer_code
thf(fact_5898_assert_H__def,axiom,
    ( refine_Imp_assert
    = ( ^ [P5: $o] : ( if_Hea8138950348631371857t_unit @ P5 @ ( heap_T4284346855313245393t_unit @ product_Unity ) @ ( heap_T2927564422264180874t_unit @ ( cons_char @ ( char2 @ $true @ $false @ $false @ $false @ $false @ $true @ $true @ $false ) @ ( cons_char @ ( char2 @ $true @ $true @ $false @ $false @ $true @ $true @ $true @ $false ) @ ( cons_char @ ( char2 @ $true @ $true @ $false @ $false @ $true @ $true @ $true @ $false ) @ ( cons_char @ ( char2 @ $true @ $false @ $true @ $false @ $false @ $true @ $true @ $false ) @ ( cons_char @ ( char2 @ $false @ $true @ $false @ $false @ $true @ $true @ $true @ $false ) @ ( cons_char @ ( char2 @ $false @ $false @ $true @ $false @ $true @ $true @ $true @ $false ) @ nil_char ) ) ) ) ) ) ) ) ) ) ).

% assert'_def
thf(fact_5899_wait__def,axiom,
    ( heap_Time_wait
    = ( ^ [N3: nat] :
          ( heap_T6183433275982383450t_unit
          @ ^ [H3: heap_e7401611519738050253t_unit] : ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ product_Unity @ ( produc584006145561248582it_nat @ H3 @ N3 ) ) ) ) ) ) ).

% wait_def
thf(fact_5900_unit__all__impI,axiom,
    ! [P: product_unit > $o,Q: product_unit > $o] :
      ( ( ( P @ product_Unity )
       => ( Q @ product_Unity ) )
     => ! [X4: product_unit] :
          ( ( P @ X4 )
         => ( Q @ X4 ) ) ) ).

% unit_all_impI
thf(fact_5901_eq__sym__Unity__conv,axiom,
    ! [X2: $o] :
      ( ( X2
        = ( product_Unity = product_Unity ) )
      = X2 ) ).

% eq_sym_Unity_conv
thf(fact_5902_refines__assert_H,axiom,
    ! [Phi: $o] : ( refine451278484176762712t_unit @ ( heap_T4284346855313245393t_unit @ product_Unity ) @ ( refine_Imp_assert @ Phi ) ) ).

% refines_assert'
thf(fact_5903_execute__assert_H,axiom,
    ! [P: $o,H: heap_e7401611519738050253t_unit] :
      ( ( P
       => ( ( heap_T875086893843062177t_unit @ ( refine_Imp_assert @ P ) @ H )
          = ( some_P1914260805536162275it_nat @ ( produc7133225469290080770it_nat @ product_Unity @ ( produc584006145561248582it_nat @ H @ zero_zero_nat ) ) ) ) )
      & ( ~ P
       => ( ( heap_T875086893843062177t_unit @ ( refine_Imp_assert @ P ) @ H )
          = none_P9117596204409417319it_nat ) ) ) ).

% execute_assert'
thf(fact_5904_natural__zero__minus__one,axiom,
    ( ( minus_7197305767214868737atural @ zero_z2226904508553997617atural @ one_one_Code_natural )
    = zero_z2226904508553997617atural ) ).

% natural_zero_minus_one
thf(fact_5905_minus__shift__def,axiom,
    ( minus_shift
    = ( ^ [R2: code_natural,K2: code_natural,L2: code_natural] : ( if_Code_natural @ ( ord_le5570908160329646204atural @ K2 @ L2 ) @ ( minus_7197305767214868737atural @ ( plus_p4538020629002901425atural @ R2 @ K2 ) @ L2 ) @ ( minus_7197305767214868737atural @ K2 @ L2 ) ) ) ) ).

% minus_shift_def
thf(fact_5906_next_Osimps,axiom,
    ! [V: code_natural,W2: code_natural] :
      ( ( next @ ( produc3574140220909816553atural @ V @ W2 ) )
      = ( produc6639722614265839536atural @ ( plus_p4538020629002901425atural @ ( minus_shift @ ( numera5444537566228673987atural @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( minus_shift @ ( numera5444537566228673987atural @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( times_2397367101498566445atural @ ( modulo8411746178871703098atural @ V @ ( numera5444537566228673987atural @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( numera5444537566228673987atural @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ V @ ( numera5444537566228673987atural @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( numera5444537566228673987atural @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( plus_p4538020629002901425atural @ ( minus_shift @ ( numera5444537566228673987atural @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( times_2397367101498566445atural @ ( modulo8411746178871703098atural @ W2 @ ( numera5444537566228673987atural @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( numera5444537566228673987atural @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ W2 @ ( numera5444537566228673987atural @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( numera5444537566228673987atural @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ one_one_Code_natural ) ) @ one_one_Code_natural ) @ ( produc3574140220909816553atural @ ( minus_shift @ ( numera5444537566228673987atural @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( times_2397367101498566445atural @ ( modulo8411746178871703098atural @ V @ ( numera5444537566228673987atural @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( numera5444537566228673987atural @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ V @ ( numera5444537566228673987atural @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( numera5444537566228673987atural @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( minus_shift @ ( numera5444537566228673987atural @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( times_2397367101498566445atural @ ( modulo8411746178871703098atural @ W2 @ ( numera5444537566228673987atural @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( numera5444537566228673987atural @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( times_2397367101498566445atural @ ( divide5121882707175180666atural @ W2 @ ( numera5444537566228673987atural @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ ( numera5444537566228673987atural @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% next.simps
thf(fact_5907_log_Oelims,axiom,
    ! [X2: code_natural,Xa: code_natural,Y: code_natural] :
      ( ( ( log @ X2 @ Xa )
        = Y )
     => ( ( ( ( ord_le1926595141338095240atural @ X2 @ one_one_Code_natural )
            | ( ord_le5570908160329646204atural @ Xa @ X2 ) )
         => ( Y = one_one_Code_natural ) )
        & ( ~ ( ( ord_le1926595141338095240atural @ X2 @ one_one_Code_natural )
              | ( ord_le5570908160329646204atural @ Xa @ X2 ) )
         => ( Y
            = ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( log @ X2 @ ( divide5121882707175180666atural @ Xa @ X2 ) ) ) ) ) ) ) ).

% log.elims
thf(fact_5908_log_Osimps,axiom,
    ( log
    = ( ^ [B2: code_natural,I2: code_natural] :
          ( if_Code_natural
          @ ( ( ord_le1926595141338095240atural @ B2 @ one_one_Code_natural )
            | ( ord_le5570908160329646204atural @ I2 @ B2 ) )
          @ one_one_Code_natural
          @ ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( log @ B2 @ ( divide5121882707175180666atural @ I2 @ B2 ) ) ) ) ) ) ).

% log.simps
thf(fact_5909_split__seed__def,axiom,
    ( split_seed
    = ( ^ [S4: produc7822875418678951345atural] :
          ( produc8282080750456430313atural
          @ ^ [V3: code_natural,W: code_natural] :
              ( produc8282080750456430313atural
              @ ^ [V5: code_natural,W4: code_natural] : ( produc4480994950612372183atural @ ( produc3574140220909816553atural @ ( inc_shift @ ( numera5444537566228673987atural @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ V3 ) @ W4 ) @ ( produc3574140220909816553atural @ V5 @ ( inc_shift @ ( numera5444537566228673987atural @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ W ) ) )
              @ ( produc6591912806276919810atural @ ( next @ S4 ) ) )
          @ S4 ) ) ) ).

% split_seed_def
thf(fact_5910_Random_Orange__def,axiom,
    ( range
    = ( ^ [K2: code_natural] :
          ( produc5538323210962509403atural
          @ ( iterat8892046348760725948atural @ ( log @ ( numera5444537566228673987atural @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) @ K2 )
            @ ^ [L2: code_natural] :
                ( produc5538323210962509403atural @ next
                @ ^ [V3: code_natural] : ( produc6639722614265839536atural @ ( plus_p4538020629002901425atural @ V3 @ ( times_2397367101498566445atural @ L2 @ ( numera5444537566228673987atural @ ( bit1 @ ( bit0 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit0 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ ( bit1 @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
            @ one_one_Code_natural )
          @ ^ [V3: code_natural] : ( produc6639722614265839536atural @ ( modulo8411746178871703098atural @ V3 @ K2 ) ) ) ) ) ).

% Random.range_def
thf(fact_5911_inc__shift__def,axiom,
    ( inc_shift
    = ( ^ [V3: code_natural,K2: code_natural] : ( if_Code_natural @ ( V3 = K2 ) @ one_one_Code_natural @ ( plus_p4538020629002901425atural @ K2 @ one_one_Code_natural ) ) ) ) ).

% inc_shift_def
thf(fact_5912_log_Opelims,axiom,
    ! [X2: code_natural,Xa: code_natural,Y: code_natural] :
      ( ( ( log @ X2 @ Xa )
        = Y )
     => ( ( accp_P8126237942716283194atural @ log_rel @ ( produc3574140220909816553atural @ X2 @ Xa ) )
       => ~ ( ( ( ( ( ord_le1926595141338095240atural @ X2 @ one_one_Code_natural )
                  | ( ord_le5570908160329646204atural @ Xa @ X2 ) )
               => ( Y = one_one_Code_natural ) )
              & ( ~ ( ( ord_le1926595141338095240atural @ X2 @ one_one_Code_natural )
                    | ( ord_le5570908160329646204atural @ Xa @ X2 ) )
               => ( Y
                  = ( plus_p4538020629002901425atural @ one_one_Code_natural @ ( log @ X2 @ ( divide5121882707175180666atural @ Xa @ X2 ) ) ) ) ) )
           => ~ ( accp_P8126237942716283194atural @ log_rel @ ( produc3574140220909816553atural @ X2 @ Xa ) ) ) ) ) ).

% log.pelims
thf(fact_5913_natural__of__nat__of__nat,axiom,
    code_natural_of_nat = semiri3763490453095760265atural ).

% natural_of_nat_of_nat
thf(fact_5914_divide__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( divide5121882707175180666atural @ ( code_natural_of_nat @ Xa ) @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( divide_divide_nat @ Xa @ X2 ) ) ) ).

% divide_natural.abs_eq
thf(fact_5915_less__eq__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( ord_le1926595141338095240atural @ ( code_natural_of_nat @ Xa ) @ ( code_natural_of_nat @ X2 ) )
      = ( ord_less_eq_nat @ Xa @ X2 ) ) ).

% less_eq_natural.abs_eq
thf(fact_5916_minus__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( minus_7197305767214868737atural @ ( code_natural_of_nat @ Xa ) @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( minus_minus_nat @ Xa @ X2 ) ) ) ).

% minus_natural.abs_eq
thf(fact_5917_zero__natural__def,axiom,
    ( zero_z2226904508553997617atural
    = ( code_natural_of_nat @ zero_zero_nat ) ) ).

% zero_natural_def
thf(fact_5918_one__natural__def,axiom,
    ( one_one_Code_natural
    = ( code_natural_of_nat @ one_one_nat ) ) ).

% one_natural_def
thf(fact_5919_euclidean__size__natural_Oabs__eq,axiom,
    ! [X2: nat] :
      ( ( euclid5200926497590043453atural @ ( code_natural_of_nat @ X2 ) )
      = ( euclid4777050414544973029ze_nat @ X2 ) ) ).

% euclidean_size_natural.abs_eq
thf(fact_5920_mask__natural__def,axiom,
    ( bit_se943457434206027407atural
    = ( map_fu4742413587575543474atural @ id_nat @ code_natural_of_nat @ bit_se2002935070580805687sk_nat ) ) ).

% mask_natural_def
thf(fact_5921_drop__bit__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( bit_se2751692689150723149atural @ Xa @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( bit_se8570568707652914677it_nat @ Xa @ X2 ) ) ) ).

% drop_bit_natural.abs_eq
thf(fact_5922_and__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( bit_se2773287842338716102atural @ ( code_natural_of_nat @ Xa ) @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( bit_se727722235901077358nd_nat @ Xa @ X2 ) ) ) ).

% and_natural.abs_eq
thf(fact_5923_bit__natural_Oabs__eq,axiom,
    ! [X2: nat] :
      ( ( bit_se8040316288895769887atural @ ( code_natural_of_nat @ X2 ) )
      = ( bit_se1148574629649215175it_nat @ X2 ) ) ).

% bit_natural.abs_eq
thf(fact_5924_take__bit__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( bit_se569199155075624693atural @ Xa @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( bit_se2925701944663578781it_nat @ Xa @ X2 ) ) ) ).

% take_bit_natural.abs_eq
thf(fact_5925_xor__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( bit_se2046307713759805098atural @ ( code_natural_of_nat @ Xa ) @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( bit_se6528837805403552850or_nat @ Xa @ X2 ) ) ) ).

% xor_natural.abs_eq
thf(fact_5926_or__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( bit_se9127793120404214118atural @ ( code_natural_of_nat @ Xa ) @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( bit_se1412395901928357646or_nat @ Xa @ X2 ) ) ) ).

% or_natural.abs_eq
thf(fact_5927_push__bit__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( bit_se6611745700429515170atural @ Xa @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( bit_se547839408752420682it_nat @ Xa @ X2 ) ) ) ).

% push_bit_natural.abs_eq
thf(fact_5928_mask__natural_Oabs__eq,axiom,
    ( bit_se943457434206027407atural
    = ( ^ [X: nat] : ( code_natural_of_nat @ ( bit_se2002935070580805687sk_nat @ X ) ) ) ) ).

% mask_natural.abs_eq
thf(fact_5929_flip__bit__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( bit_se168947363167071951atural @ Xa @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( bit_se2161824704523386999it_nat @ Xa @ X2 ) ) ) ).

% flip_bit_natural.abs_eq
thf(fact_5930_unset__bit__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( bit_se7083795435491715335atural @ Xa @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( bit_se4205575877204974255it_nat @ Xa @ X2 ) ) ) ).

% unset_bit_natural.abs_eq
thf(fact_5931_set__bit__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( bit_se1617098188084679374atural @ Xa @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( bit_se7882103937844011126it_nat @ Xa @ X2 ) ) ) ).

% set_bit_natural.abs_eq
thf(fact_5932_division__segment__natural_Oabs__eq,axiom,
    ! [X2: nat] :
      ( ( euclid5112970336976722131atural @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( euclid3398187327856392827nt_nat @ X2 ) ) ) ).

% division_segment_natural.abs_eq
thf(fact_5933_natural__of__nat__cases,axiom,
    ! [X2: code_natural] :
      ~ ! [Y2: nat] :
          ( ( X2
            = ( code_natural_of_nat @ Y2 ) )
         => ~ ( member_nat @ Y2 @ top_top_set_nat ) ) ).

% natural_of_nat_cases
thf(fact_5934_natural__of__nat__induct,axiom,
    ! [P: code_natural > $o,X2: code_natural] :
      ( ! [Y2: nat] :
          ( ( member_nat @ Y2 @ top_top_set_nat )
         => ( P @ ( code_natural_of_nat @ Y2 ) ) )
     => ( P @ X2 ) ) ).

% natural_of_nat_induct
thf(fact_5935_natural__of__nat__inject,axiom,
    ! [X2: nat,Y: nat] :
      ( ( member_nat @ X2 @ top_top_set_nat )
     => ( ( member_nat @ Y @ top_top_set_nat )
       => ( ( ( code_natural_of_nat @ X2 )
            = ( code_natural_of_nat @ Y ) )
          = ( X2 = Y ) ) ) ) ).

% natural_of_nat_inject
thf(fact_5936_less__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( ord_le5570908160329646204atural @ ( code_natural_of_nat @ Xa ) @ ( code_natural_of_nat @ X2 ) )
      = ( ord_less_nat @ Xa @ X2 ) ) ).

% less_natural.abs_eq
thf(fact_5937_plus__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( plus_p4538020629002901425atural @ ( code_natural_of_nat @ Xa ) @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( plus_plus_nat @ Xa @ X2 ) ) ) ).

% plus_natural.abs_eq
thf(fact_5938_times__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( times_2397367101498566445atural @ ( code_natural_of_nat @ Xa ) @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( times_times_nat @ Xa @ X2 ) ) ) ).

% times_natural.abs_eq
thf(fact_5939_modulo__natural_Oabs__eq,axiom,
    ! [Xa: nat,X2: nat] :
      ( ( modulo8411746178871703098atural @ ( code_natural_of_nat @ Xa ) @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( modulo_modulo_nat @ Xa @ X2 ) ) ) ).

% modulo_natural.abs_eq
thf(fact_5940_Nat_Oabs__eq,axiom,
    ! [X2: int] :
      ( ( code_Nat @ ( code_integer_of_int @ X2 ) )
      = ( code_natural_of_nat @ ( nat2 @ X2 ) ) ) ).

% Nat.abs_eq
thf(fact_5941_nat__of__natural__inverse,axiom,
    ! [X2: code_natural] :
      ( ( code_natural_of_nat @ ( code_nat_of_natural @ X2 ) )
      = X2 ) ).

% nat_of_natural_inverse
thf(fact_5942_nat__of__natural__of__nat__inverse,axiom,
    ! [N: nat] :
      ( ( code_nat_of_natural @ ( code_natural_of_nat @ N ) )
      = N ) ).

% nat_of_natural_of_nat_inverse
thf(fact_5943_natural__of__nat__of__natural__inverse,axiom,
    ! [N: code_natural] :
      ( ( code_natural_of_nat @ ( code_nat_of_natural @ N ) )
      = N ) ).

% natural_of_nat_of_natural_inverse
thf(fact_5944_nat__of__natural__min,axiom,
    ! [K: code_natural,L: code_natural] :
      ( ( code_nat_of_natural @ ( ord_min_Code_natural @ K @ L ) )
      = ( ord_min_nat @ ( code_nat_of_natural @ K ) @ ( code_nat_of_natural @ L ) ) ) ).

% nat_of_natural_min
thf(fact_5945_nat__of__natural__max,axiom,
    ! [K: code_natural,L: code_natural] :
      ( ( code_nat_of_natural @ ( ord_max_Code_natural @ K @ L ) )
      = ( ord_max_nat @ ( code_nat_of_natural @ K ) @ ( code_nat_of_natural @ L ) ) ) ).

% nat_of_natural_max
thf(fact_5946_nat__of__natural__of__nat,axiom,
    ! [N: nat] :
      ( ( code_nat_of_natural @ ( semiri3763490453095760265atural @ N ) )
      = N ) ).

% nat_of_natural_of_nat
thf(fact_5947_of__nat__of__natural,axiom,
    ! [N: code_natural] :
      ( ( semiri3763490453095760265atural @ ( code_nat_of_natural @ N ) )
      = N ) ).

% of_nat_of_natural
thf(fact_5948_zero__natural_Orep__eq,axiom,
    ( ( code_nat_of_natural @ zero_z2226904508553997617atural )
    = zero_zero_nat ) ).

% zero_natural.rep_eq
thf(fact_5949_one__natural_Orep__eq,axiom,
    ( ( code_nat_of_natural @ one_one_Code_natural )
    = one_one_nat ) ).

% one_natural.rep_eq
thf(fact_5950_plus__natural_Orep__eq,axiom,
    ! [X2: code_natural,Xa: code_natural] :
      ( ( code_nat_of_natural @ ( plus_p4538020629002901425atural @ X2 @ Xa ) )
      = ( plus_plus_nat @ ( code_nat_of_natural @ X2 ) @ ( code_nat_of_natural @ Xa ) ) ) ).

% plus_natural.rep_eq
thf(fact_5951_minus__natural_Orep__eq,axiom,
    ! [X2: code_natural,Xa: code_natural] :
      ( ( code_nat_of_natural @ ( minus_7197305767214868737atural @ X2 @ Xa ) )
      = ( minus_minus_nat @ ( code_nat_of_natural @ X2 ) @ ( code_nat_of_natural @ Xa ) ) ) ).

% minus_natural.rep_eq
thf(fact_5952_nat__of__natural__numeral,axiom,
    ! [K: num] :
      ( ( code_nat_of_natural @ ( numera5444537566228673987atural @ K ) )
      = ( numeral_numeral_nat @ K ) ) ).

% nat_of_natural_numeral
thf(fact_5953_times__natural_Orep__eq,axiom,
    ! [X2: code_natural,Xa: code_natural] :
      ( ( code_nat_of_natural @ ( times_2397367101498566445atural @ X2 @ Xa ) )
      = ( times_times_nat @ ( code_nat_of_natural @ X2 ) @ ( code_nat_of_natural @ Xa ) ) ) ).

% times_natural.rep_eq
thf(fact_5954_divide__natural_Orep__eq,axiom,
    ! [X2: code_natural,Xa: code_natural] :
      ( ( code_nat_of_natural @ ( divide5121882707175180666atural @ X2 @ Xa ) )
      = ( divide_divide_nat @ ( code_nat_of_natural @ X2 ) @ ( code_nat_of_natural @ Xa ) ) ) ).

% divide_natural.rep_eq
thf(fact_5955_modulo__natural_Orep__eq,axiom,
    ! [X2: code_natural,Xa: code_natural] :
      ( ( code_nat_of_natural @ ( modulo8411746178871703098atural @ X2 @ Xa ) )
      = ( modulo_modulo_nat @ ( code_nat_of_natural @ X2 ) @ ( code_nat_of_natural @ Xa ) ) ) ).

% modulo_natural.rep_eq
thf(fact_5956_division__segment__natural_Orep__eq,axiom,
    ! [X2: code_natural] :
      ( ( code_nat_of_natural @ ( euclid5112970336976722131atural @ X2 ) )
      = ( euclid3398187327856392827nt_nat @ ( code_nat_of_natural @ X2 ) ) ) ).

% division_segment_natural.rep_eq
thf(fact_5957_euclidean__size__natural_Orep__eq,axiom,
    ( euclid5200926497590043453atural
    = ( ^ [X: code_natural] : ( euclid4777050414544973029ze_nat @ ( code_nat_of_natural @ X ) ) ) ) ).

% euclidean_size_natural.rep_eq
thf(fact_5958_minus__natural__def,axiom,
    ( minus_7197305767214868737atural
    = ( map_fu6549440983881763648atural @ code_nat_of_natural @ ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat ) @ minus_minus_nat ) ) ).

% minus_natural_def
thf(fact_5959_or__natural__def,axiom,
    ( bit_se9127793120404214118atural
    = ( map_fu6549440983881763648atural @ code_nat_of_natural @ ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat ) @ bit_se1412395901928357646or_nat ) ) ).

% or_natural_def
thf(fact_5960_xor__natural__def,axiom,
    ( bit_se2046307713759805098atural
    = ( map_fu6549440983881763648atural @ code_nat_of_natural @ ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat ) @ bit_se6528837805403552850or_nat ) ) ).

% xor_natural_def
thf(fact_5961_and__natural__def,axiom,
    ( bit_se2773287842338716102atural
    = ( map_fu6549440983881763648atural @ code_nat_of_natural @ ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat ) @ bit_se727722235901077358nd_nat ) ) ).

% and_natural_def
thf(fact_5962_division__segment__natural__def,axiom,
    ( euclid5112970336976722131atural
    = ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat @ euclid3398187327856392827nt_nat ) ) ).

% division_segment_natural_def
thf(fact_5963_natural__of__nat__inverse,axiom,
    ! [Y: nat] :
      ( ( member_nat @ Y @ top_top_set_nat )
     => ( ( code_nat_of_natural @ ( code_natural_of_nat @ Y ) )
        = Y ) ) ).

% natural_of_nat_inverse
thf(fact_5964_type__definition__natural,axiom,
    type_d4410041424927559462al_nat @ code_nat_of_natural @ code_natural_of_nat @ top_top_set_nat ).

% type_definition_natural
thf(fact_5965_plus__natural__def,axiom,
    ( plus_p4538020629002901425atural
    = ( map_fu6549440983881763648atural @ code_nat_of_natural @ ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat ) @ plus_plus_nat ) ) ).

% plus_natural_def
thf(fact_5966_less__natural__def,axiom,
    ( ord_le5570908160329646204atural
    = ( map_fu6256889081107267320ural_o @ code_nat_of_natural @ ( map_fu4892316939951275536at_o_o @ code_nat_of_natural @ id_o ) @ ord_less_nat ) ) ).

% less_natural_def
thf(fact_5967_less__natural_Orep__eq,axiom,
    ( ord_le5570908160329646204atural
    = ( ^ [X: code_natural,Xa4: code_natural] : ( ord_less_nat @ ( code_nat_of_natural @ X ) @ ( code_nat_of_natural @ Xa4 ) ) ) ) ).

% less_natural.rep_eq
thf(fact_5968_nat__of__natural__induct,axiom,
    ! [Y: nat,P: nat > $o] :
      ( ( member_nat @ Y @ top_top_set_nat )
     => ( ! [X3: code_natural] : ( P @ ( code_nat_of_natural @ X3 ) )
       => ( P @ Y ) ) ) ).

% nat_of_natural_induct
thf(fact_5969_nat__of__natural__cases,axiom,
    ! [Y: nat] :
      ( ( member_nat @ Y @ top_top_set_nat )
     => ~ ! [X3: code_natural] :
            ( Y
           != ( code_nat_of_natural @ X3 ) ) ) ).

% nat_of_natural_cases
thf(fact_5970_nat__of__natural,axiom,
    ! [X2: code_natural] : ( member_nat @ ( code_nat_of_natural @ X2 ) @ top_top_set_nat ) ).

% nat_of_natural
thf(fact_5971_drop__bit__natural_Orep__eq,axiom,
    ! [X2: nat,Xa: code_natural] :
      ( ( code_nat_of_natural @ ( bit_se2751692689150723149atural @ X2 @ Xa ) )
      = ( bit_se8570568707652914677it_nat @ X2 @ ( code_nat_of_natural @ Xa ) ) ) ).

% drop_bit_natural.rep_eq
thf(fact_5972_bit__natural_Orep__eq,axiom,
    ( bit_se8040316288895769887atural
    = ( ^ [X: code_natural] : ( bit_se1148574629649215175it_nat @ ( code_nat_of_natural @ X ) ) ) ) ).

% bit_natural.rep_eq
thf(fact_5973_or__natural_Orep__eq,axiom,
    ! [X2: code_natural,Xa: code_natural] :
      ( ( code_nat_of_natural @ ( bit_se9127793120404214118atural @ X2 @ Xa ) )
      = ( bit_se1412395901928357646or_nat @ ( code_nat_of_natural @ X2 ) @ ( code_nat_of_natural @ Xa ) ) ) ).

% or_natural.rep_eq
thf(fact_5974_xor__natural_Orep__eq,axiom,
    ! [X2: code_natural,Xa: code_natural] :
      ( ( code_nat_of_natural @ ( bit_se2046307713759805098atural @ X2 @ Xa ) )
      = ( bit_se6528837805403552850or_nat @ ( code_nat_of_natural @ X2 ) @ ( code_nat_of_natural @ Xa ) ) ) ).

% xor_natural.rep_eq
thf(fact_5975_natural__eq__iff,axiom,
    ( ( ^ [Y3: code_natural,Z: code_natural] : Y3 = Z )
    = ( ^ [M2: code_natural,N3: code_natural] :
          ( ( code_nat_of_natural @ M2 )
          = ( code_nat_of_natural @ N3 ) ) ) ) ).

% natural_eq_iff
thf(fact_5976_natural__eqI,axiom,
    ! [M: code_natural,N: code_natural] :
      ( ( ( code_nat_of_natural @ M )
        = ( code_nat_of_natural @ N ) )
     => ( M = N ) ) ).

% natural_eqI
thf(fact_5977_nat__of__natural__inject,axiom,
    ! [X2: code_natural,Y: code_natural] :
      ( ( ( code_nat_of_natural @ X2 )
        = ( code_nat_of_natural @ Y ) )
      = ( X2 = Y ) ) ).

% nat_of_natural_inject
thf(fact_5978_take__bit__natural_Orep__eq,axiom,
    ! [X2: nat,Xa: code_natural] :
      ( ( code_nat_of_natural @ ( bit_se569199155075624693atural @ X2 @ Xa ) )
      = ( bit_se2925701944663578781it_nat @ X2 @ ( code_nat_of_natural @ Xa ) ) ) ).

% take_bit_natural.rep_eq
thf(fact_5979_and__natural_Orep__eq,axiom,
    ! [X2: code_natural,Xa: code_natural] :
      ( ( code_nat_of_natural @ ( bit_se2773287842338716102atural @ X2 @ Xa ) )
      = ( bit_se727722235901077358nd_nat @ ( code_nat_of_natural @ X2 ) @ ( code_nat_of_natural @ Xa ) ) ) ).

% and_natural.rep_eq
thf(fact_5980_mask__natural_Orep__eq,axiom,
    ! [X2: nat] :
      ( ( code_nat_of_natural @ ( bit_se943457434206027407atural @ X2 ) )
      = ( bit_se2002935070580805687sk_nat @ X2 ) ) ).

% mask_natural.rep_eq
thf(fact_5981_push__bit__natural_Orep__eq,axiom,
    ! [X2: nat,Xa: code_natural] :
      ( ( code_nat_of_natural @ ( bit_se6611745700429515170atural @ X2 @ Xa ) )
      = ( bit_se547839408752420682it_nat @ X2 @ ( code_nat_of_natural @ Xa ) ) ) ).

% push_bit_natural.rep_eq
thf(fact_5982_set__bit__natural_Orep__eq,axiom,
    ! [X2: nat,Xa: code_natural] :
      ( ( code_nat_of_natural @ ( bit_se1617098188084679374atural @ X2 @ Xa ) )
      = ( bit_se7882103937844011126it_nat @ X2 @ ( code_nat_of_natural @ Xa ) ) ) ).

% set_bit_natural.rep_eq
thf(fact_5983_unset__bit__natural_Orep__eq,axiom,
    ! [X2: nat,Xa: code_natural] :
      ( ( code_nat_of_natural @ ( bit_se7083795435491715335atural @ X2 @ Xa ) )
      = ( bit_se4205575877204974255it_nat @ X2 @ ( code_nat_of_natural @ Xa ) ) ) ).

% unset_bit_natural.rep_eq
thf(fact_5984_flip__bit__natural_Orep__eq,axiom,
    ! [X2: nat,Xa: code_natural] :
      ( ( code_nat_of_natural @ ( bit_se168947363167071951atural @ X2 @ Xa ) )
      = ( bit_se2161824704523386999it_nat @ X2 @ ( code_nat_of_natural @ Xa ) ) ) ).

% flip_bit_natural.rep_eq
thf(fact_5985_Nat_Orep__eq,axiom,
    ! [X2: code_integer] :
      ( ( code_nat_of_natural @ ( code_Nat @ X2 ) )
      = ( nat2 @ ( code_int_of_integer @ X2 ) ) ) ).

% Nat.rep_eq
thf(fact_5986_euclidean__size__natural__def,axiom,
    ( euclid5200926497590043453atural
    = ( map_fu226235371393106610at_nat @ code_nat_of_natural @ id_nat @ euclid4777050414544973029ze_nat ) ) ).

% euclidean_size_natural_def
thf(fact_5987_bit__natural__def,axiom,
    ( bit_se8040316288895769887atural
    = ( map_fu6244533035418998608_nat_o @ code_nat_of_natural @ id_nat_o @ bit_se1148574629649215175it_nat ) ) ).

% bit_natural_def
thf(fact_5988_less__eq__natural_Orep__eq,axiom,
    ( ord_le1926595141338095240atural
    = ( ^ [X: code_natural,Xa4: code_natural] : ( ord_less_eq_nat @ ( code_nat_of_natural @ X ) @ ( code_nat_of_natural @ Xa4 ) ) ) ) ).

% less_eq_natural.rep_eq
thf(fact_5989_times__natural__def,axiom,
    ( times_2397367101498566445atural
    = ( map_fu6549440983881763648atural @ code_nat_of_natural @ ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat ) @ times_times_nat ) ) ).

% times_natural_def
thf(fact_5990_divide__natural__def,axiom,
    ( divide5121882707175180666atural
    = ( map_fu6549440983881763648atural @ code_nat_of_natural @ ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat ) @ divide_divide_nat ) ) ).

% divide_natural_def
thf(fact_5991_take__bit__natural__def,axiom,
    ( bit_se569199155075624693atural
    = ( map_fu6981160461238011112atural @ id_nat @ ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat ) @ bit_se2925701944663578781it_nat ) ) ).

% take_bit_natural_def
thf(fact_5992_push__bit__natural__def,axiom,
    ( bit_se6611745700429515170atural
    = ( map_fu6981160461238011112atural @ id_nat @ ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat ) @ bit_se547839408752420682it_nat ) ) ).

% push_bit_natural_def
thf(fact_5993_less__eq__natural__def,axiom,
    ( ord_le1926595141338095240atural
    = ( map_fu6256889081107267320ural_o @ code_nat_of_natural @ ( map_fu4892316939951275536at_o_o @ code_nat_of_natural @ id_o ) @ ord_less_eq_nat ) ) ).

% less_eq_natural_def
thf(fact_5994_modulo__natural__def,axiom,
    ( modulo8411746178871703098atural
    = ( map_fu6549440983881763648atural @ code_nat_of_natural @ ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat ) @ modulo_modulo_nat ) ) ).

% modulo_natural_def
thf(fact_5995_drop__bit__natural__def,axiom,
    ( bit_se2751692689150723149atural
    = ( map_fu6981160461238011112atural @ id_nat @ ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat ) @ bit_se8570568707652914677it_nat ) ) ).

% drop_bit_natural_def
thf(fact_5996_flip__bit__natural__def,axiom,
    ( bit_se168947363167071951atural
    = ( map_fu6981160461238011112atural @ id_nat @ ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat ) @ bit_se2161824704523386999it_nat ) ) ).

% flip_bit_natural_def
thf(fact_5997_set__bit__natural__def,axiom,
    ( bit_se1617098188084679374atural
    = ( map_fu6981160461238011112atural @ id_nat @ ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat ) @ bit_se7882103937844011126it_nat ) ) ).

% set_bit_natural_def
thf(fact_5998_unset__bit__natural__def,axiom,
    ( bit_se7083795435491715335atural
    = ( map_fu6981160461238011112atural @ id_nat @ ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat ) @ bit_se4205575877204974255it_nat ) ) ).

% unset_bit_natural_def
thf(fact_5999_natural__decr,axiom,
    ! [N: code_natural] :
      ( ( N != zero_z2226904508553997617atural )
     => ( ord_less_nat @ ( minus_minus_nat @ ( code_nat_of_natural @ N ) @ ( suc @ zero_zero_nat ) ) @ ( code_nat_of_natural @ N ) ) ) ).

% natural_decr
thf(fact_6000_Nat__def,axiom,
    ( code_Nat
    = ( map_fu1051355602067684763atural @ code_int_of_integer @ code_natural_of_nat @ nat2 ) ) ).

% Nat_def
thf(fact_6001_integer__of__natural_Orep__eq,axiom,
    ! [X2: code_natural] :
      ( ( code_int_of_integer @ ( code_i5400310926305786745atural @ X2 ) )
      = ( semiri1314217659103216013at_int @ ( code_nat_of_natural @ X2 ) ) ) ).

% integer_of_natural.rep_eq
thf(fact_6002_int__of__integer__of__natural,axiom,
    ! [N: code_natural] :
      ( ( code_int_of_integer @ ( code_i5400310926305786745atural @ N ) )
      = ( semiri1314217659103216013at_int @ ( code_nat_of_natural @ N ) ) ) ).

% int_of_integer_of_natural
thf(fact_6003_integer__of__natural__of__nat,axiom,
    ! [N: nat] :
      ( ( code_i5400310926305786745atural @ ( semiri3763490453095760265atural @ N ) )
      = ( semiri4939895301339042750nteger @ N ) ) ).

% integer_of_natural_of_nat
thf(fact_6004_integer__of__natural__def,axiom,
    ( code_i5400310926305786745atural
    = ( map_fu2787874002554666395nteger @ code_nat_of_natural @ code_integer_of_int @ semiri1314217659103216013at_int ) ) ).

% integer_of_natural_def
thf(fact_6005_integer__of__natural_Oabs__eq,axiom,
    ! [X2: nat] :
      ( ( code_i5400310926305786745atural @ ( code_natural_of_nat @ X2 ) )
      = ( code_integer_of_int @ ( semiri1314217659103216013at_int @ X2 ) ) ) ).

% integer_of_natural.abs_eq
thf(fact_6006_integer__of__natural__of__integer,axiom,
    ! [K: code_integer] :
      ( ( code_i5400310926305786745atural @ ( code_n4118661773612635043nteger @ K ) )
      = ( ord_max_Code_integer @ zero_z3403309356797280102nteger @ K ) ) ).

% integer_of_natural_of_integer
thf(fact_6007_natural__of__integer__def,axiom,
    ( code_n4118661773612635043nteger
    = ( map_fu1051355602067684763atural @ code_int_of_integer @ code_natural_of_nat @ nat2 ) ) ).

% natural_of_integer_def
thf(fact_6008_natural__of__integer__of__natural,axiom,
    ! [N: code_natural] :
      ( ( code_n4118661773612635043nteger @ ( code_i5400310926305786745atural @ N ) )
      = N ) ).

% natural_of_integer_of_natural
thf(fact_6009_natural__of__integer_Orep__eq,axiom,
    ! [X2: code_integer] :
      ( ( code_nat_of_natural @ ( code_n4118661773612635043nteger @ X2 ) )
      = ( nat2 @ ( code_int_of_integer @ X2 ) ) ) ).

% natural_of_integer.rep_eq
thf(fact_6010_natural__of__integer_Oabs__eq,axiom,
    ! [X2: int] :
      ( ( code_n4118661773612635043nteger @ ( code_integer_of_int @ X2 ) )
      = ( code_natural_of_nat @ ( nat2 @ X2 ) ) ) ).

% natural_of_integer.abs_eq
thf(fact_6011_Code__Numeral_Osize__nat__def,axiom,
    code_size_nat = code_nat_of_natural ).

% Code_Numeral.size_nat_def
thf(fact_6012_Code__Numeral_OSuc__def,axiom,
    ( code_Suc
    = ( map_fu1239815594074539274atural @ code_nat_of_natural @ code_natural_of_nat @ suc ) ) ).

% Code_Numeral.Suc_def
thf(fact_6013_natural_Oinject,axiom,
    ! [Natural: code_natural,Natural2: code_natural] :
      ( ( ( code_Suc @ Natural )
        = ( code_Suc @ Natural2 ) )
      = ( Natural = Natural2 ) ) ).

% natural.inject
thf(fact_6014_Suc_Orep__eq,axiom,
    ! [X2: code_natural] :
      ( ( code_nat_of_natural @ ( code_Suc @ X2 ) )
      = ( suc @ ( code_nat_of_natural @ X2 ) ) ) ).

% Suc.rep_eq
thf(fact_6015_natural_Odistinct_I2_J,axiom,
    ! [Natural2: code_natural] :
      ( ( code_Suc @ Natural2 )
     != zero_z2226904508553997617atural ) ).

% natural.distinct(2)
thf(fact_6016_natural_Odistinct_I1_J,axiom,
    ! [Natural2: code_natural] :
      ( zero_z2226904508553997617atural
     != ( code_Suc @ Natural2 ) ) ).

% natural.distinct(1)
thf(fact_6017_natural_Oexhaust,axiom,
    ! [Y: code_natural] :
      ( ( Y != zero_z2226904508553997617atural )
     => ~ ! [Natural3: code_natural] :
            ( Y
           != ( code_Suc @ Natural3 ) ) ) ).

% natural.exhaust
thf(fact_6018_Suc_Oabs__eq,axiom,
    ! [X2: nat] :
      ( ( code_Suc @ ( code_natural_of_nat @ X2 ) )
      = ( code_natural_of_nat @ ( suc @ X2 ) ) ) ).

% Suc.abs_eq
thf(fact_6019_Suc__natural__minus__one,axiom,
    ! [N: code_natural] :
      ( ( minus_7197305767214868737atural @ ( code_Suc @ N ) @ one_one_Code_natural )
      = N ) ).

% Suc_natural_minus_one
thf(fact_6020_prod__decode__triangle__add,axiom,
    ! [K: nat,M: nat] :
      ( ( nat_prod_decode @ ( plus_plus_nat @ ( nat_triangle @ K ) @ M ) )
      = ( nat_prod_decode_aux @ K @ M ) ) ).

% prod_decode_triangle_add
thf(fact_6021_prod__decode__def,axiom,
    ( nat_prod_decode
    = ( nat_prod_decode_aux @ zero_zero_nat ) ) ).

% prod_decode_def
thf(fact_6022_list__decode_Oelims,axiom,
    ! [X2: nat,Y: list_nat] :
      ( ( ( nat_list_decode @ X2 )
        = Y )
     => ( ( ( X2 = zero_zero_nat )
         => ( Y != nil_nat ) )
       => ~ ! [N2: nat] :
              ( ( X2
                = ( suc @ N2 ) )
             => ( Y
               != ( produc2761476792215241774st_nat
                  @ ^ [X: nat,Y4: nat] : ( cons_nat @ X @ ( nat_list_decode @ Y4 ) )
                  @ ( nat_prod_decode @ N2 ) ) ) ) ) ) ).

% list_decode.elims
thf(fact_6023_list__decode_Osimps_I2_J,axiom,
    ! [N: nat] :
      ( ( nat_list_decode @ ( suc @ N ) )
      = ( produc2761476792215241774st_nat
        @ ^ [X: nat,Y4: nat] : ( cons_nat @ X @ ( nat_list_decode @ Y4 ) )
        @ ( nat_prod_decode @ N ) ) ) ).

% list_decode.simps(2)
thf(fact_6024_list__decode_Osimps_I1_J,axiom,
    ( ( nat_list_decode @ zero_zero_nat )
    = nil_nat ) ).

% list_decode.simps(1)
thf(fact_6025_list__decode_Opelims,axiom,
    ! [X2: nat,Y: list_nat] :
      ( ( ( nat_list_decode @ X2 )
        = Y )
     => ( ( accp_nat @ nat_list_decode_rel @ X2 )
       => ( ( ( X2 = zero_zero_nat )
           => ( ( Y = nil_nat )
             => ~ ( accp_nat @ nat_list_decode_rel @ zero_zero_nat ) ) )
         => ~ ! [N2: nat] :
                ( ( X2
                  = ( suc @ N2 ) )
               => ( ( Y
                    = ( produc2761476792215241774st_nat
                      @ ^ [X: nat,Y4: nat] : ( cons_nat @ X @ ( nat_list_decode @ Y4 ) )
                      @ ( nat_prod_decode @ N2 ) ) )
                 => ~ ( accp_nat @ nat_list_decode_rel @ ( suc @ N2 ) ) ) ) ) ) ) ).

% list_decode.pelims
thf(fact_6026_list__decode_Opsimps_I1_J,axiom,
    ( ( accp_nat @ nat_list_decode_rel @ zero_zero_nat )
   => ( ( nat_list_decode @ zero_zero_nat )
      = nil_nat ) ) ).

% list_decode.psimps(1)
thf(fact_6027_list__decode_Opinduct,axiom,
    ! [A0: nat,P: nat > $o] :
      ( ( accp_nat @ nat_list_decode_rel @ A0 )
     => ( ( ( accp_nat @ nat_list_decode_rel @ zero_zero_nat )
         => ( P @ zero_zero_nat ) )
       => ( ! [N2: nat] :
              ( ( accp_nat @ nat_list_decode_rel @ ( suc @ N2 ) )
             => ( ! [X4: nat,Y5: nat] :
                    ( ( ( product_Pair_nat_nat @ X4 @ Y5 )
                      = ( nat_prod_decode @ N2 ) )
                   => ( P @ Y5 ) )
               => ( P @ ( suc @ N2 ) ) ) )
         => ( P @ A0 ) ) ) ) ).

% list_decode.pinduct
thf(fact_6028_list__decode_Opsimps_I2_J,axiom,
    ! [N: nat] :
      ( ( accp_nat @ nat_list_decode_rel @ ( suc @ N ) )
     => ( ( nat_list_decode @ ( suc @ N ) )
        = ( produc2761476792215241774st_nat
          @ ^ [X: nat,Y4: nat] : ( cons_nat @ X @ ( nat_list_decode @ Y4 ) )
          @ ( nat_prod_decode @ N ) ) ) ) ).

% list_decode.psimps(2)
thf(fact_6029_Code__Numeral_Osub__code_I4_J,axiom,
    ! [N: num] :
      ( ( code_sub @ one @ ( bit0 @ N ) )
      = ( code_Neg @ ( bitM @ N ) ) ) ).

% Code_Numeral.sub_code(4)
thf(fact_6030_less__eq__integer__code_I9_J,axiom,
    ! [K: num,L: num] :
      ( ( ord_le3102999989581377725nteger @ ( code_Neg @ K ) @ ( code_Neg @ L ) )
      = ( ord_less_eq_num @ L @ K ) ) ).

% less_eq_integer_code(9)
thf(fact_6031_less__eq__integer__code_I3_J,axiom,
    ! [L: num] :
      ~ ( ord_le3102999989581377725nteger @ zero_z3403309356797280102nteger @ ( code_Neg @ L ) ) ).

% less_eq_integer_code(3)
thf(fact_6032_less__eq__integer__code_I7_J,axiom,
    ! [K: num] : ( ord_le3102999989581377725nteger @ ( code_Neg @ K ) @ zero_z3403309356797280102nteger ) ).

% less_eq_integer_code(7)
thf(fact_6033_minus__integer__code_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_8373710615458151222nteger @ ( code_Neg @ M ) @ ( code_Neg @ N ) )
      = ( code_sub @ N @ M ) ) ).

% minus_integer_code(6)
thf(fact_6034_Code__Numeral_Odup__code_I3_J,axiom,
    ! [N: num] :
      ( ( code_dup @ ( code_Neg @ N ) )
      = ( code_Neg @ ( bit0 @ N ) ) ) ).

% Code_Numeral.dup_code(3)
thf(fact_6035_less__integer__code_I9_J,axiom,
    ! [K: num,L: num] :
      ( ( ord_le6747313008572928689nteger @ ( code_Neg @ K ) @ ( code_Neg @ L ) )
      = ( ord_less_num @ L @ K ) ) ).

% less_integer_code(9)
thf(fact_6036_plus__integer__code_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_p5714425477246183910nteger @ ( code_Neg @ M ) @ ( code_Neg @ N ) )
      = ( code_Neg @ ( plus_plus_num @ M @ N ) ) ) ).

% plus_integer_code(6)
thf(fact_6037_less__integer__code_I7_J,axiom,
    ! [K: num] : ( ord_le6747313008572928689nteger @ ( code_Neg @ K ) @ zero_z3403309356797280102nteger ) ).

% less_integer_code(7)
thf(fact_6038_less__integer__code_I3_J,axiom,
    ! [L: num] :
      ~ ( ord_le6747313008572928689nteger @ zero_z3403309356797280102nteger @ ( code_Neg @ L ) ) ).

% less_integer_code(3)
thf(fact_6039_divmod__abs__code_I2_J,axiom,
    ! [K: num,L: num] :
      ( ( code_divmod_abs @ ( code_Neg @ K ) @ ( code_Neg @ L ) )
      = ( unique3479559517661332726nteger @ K @ L ) ) ).

% divmod_abs_code(2)
thf(fact_6040_Code__Numeral_Osub__code_I5_J,axiom,
    ! [N: num] :
      ( ( code_sub @ one @ ( bit1 @ N ) )
      = ( code_Neg @ ( bit0 @ N ) ) ) ).

% Code_Numeral.sub_code(5)
thf(fact_6041_Gcd__int__set__eq__fold,axiom,
    ! [Xs: list_int] :
      ( ( gcd_Gcd_int @ ( set_int2 @ Xs ) )
      = ( fold_int_int @ gcd_gcd_int @ Xs @ zero_zero_int ) ) ).

% Gcd_int_set_eq_fold
thf(fact_6042_int_Oid__abs__transfer,axiom,
    ( bNF_re7934895593101944656at_int
    @ ( basic_5328504652464829177at_nat
      @ ^ [Y3: nat,Z: nat] : Y3 = Z
      @ ^ [Y3: nat,Z: nat] : Y3 = Z )
    @ pcr_int
    @ ^ [X: product_prod_nat_nat] : X
    @ abs_Integ ) ).

% int.id_abs_transfer
thf(fact_6043_rat_Odomain,axiom,
    ( ( domain9213661015745956397nt_rat @ pcr_rat )
    = ( ^ [X: product_prod_int_int] :
        ? [Y4: product_prod_int_int] :
          ( ( basic_4387203522000727145nt_int
            @ ^ [Y3: int,Z: int] : Y3 = Z
            @ ^ [Y3: int,Z: int] : Y3 = Z
            @ X
            @ Y4 )
          & ( ratrel @ Y4 @ Y4 ) ) ) ) ).

% rat.domain
thf(fact_6044_rat_Odomain__par,axiom,
    ! [DR1: int > $o,DR2: int > $o,P22: product_prod_int_int > $o] :
      ( ( ( domainp_int_int
          @ ^ [Y3: int,Z: int] : Y3 = Z )
        = DR1 )
     => ( ( ( domainp_int_int
            @ ^ [Y3: int,Z: int] : Y3 = Z )
          = DR2 )
       => ( ( bNF_re8699439704749558557nt_o_o
            @ ( basic_4387203522000727145nt_int
              @ ^ [Y3: int,Z: int] : Y3 = Z
              @ ^ [Y3: int,Z: int] : Y3 = Z )
            @ ^ [Y3: $o,Z: $o] : Y3 = Z
            @ P22
            @ ^ [X: product_prod_int_int] : ( ratrel @ X @ X ) )
         => ( ( domain9213661015745956397nt_rat @ pcr_rat )
            = ( inf_in3604695632404883862_int_o @ ( basic_1567116559311922317nt_int @ DR1 @ DR2 ) @ P22 ) ) ) ) ) ).

% rat.domain_par
thf(fact_6045_rat_Odomain__par__left__total,axiom,
    ! [P2: product_prod_int_int > $o] :
      ( ( left_t3131394472396969446nt_int
        @ ( basic_4387203522000727145nt_int
          @ ^ [Y3: int,Z: int] : Y3 = Z
          @ ^ [Y3: int,Z: int] : Y3 = Z ) )
     => ( ( bNF_re8699439704749558557nt_o_o
          @ ( basic_4387203522000727145nt_int
            @ ^ [Y3: int,Z: int] : Y3 = Z
            @ ^ [Y3: int,Z: int] : Y3 = Z )
          @ ^ [Y3: $o,Z: $o] : Y3 = Z
          @ P2
          @ ^ [X: product_prod_int_int] : ( ratrel @ X @ X ) )
       => ( ( domain9213661015745956397nt_rat @ pcr_rat )
          = P2 ) ) ) ).

% rat.domain_par_left_total
thf(fact_6046_Gcd__nat__set__eq__fold,axiom,
    ! [Xs: list_nat] :
      ( ( gcd_Gcd_nat @ ( set_nat2 @ Xs ) )
      = ( fold_nat_nat @ gcd_gcd_nat @ Xs @ zero_zero_nat ) ) ).

% Gcd_nat_set_eq_fold
thf(fact_6047_Abs__rat__cases,axiom,
    ! [X2: rat] :
      ~ ! [Y2: set_Pr958786334691620121nt_int] :
          ( ( X2
            = ( abs_rat @ Y2 ) )
         => ~ ( member2340774599025711042nt_int @ Y2
              @ ( collec5210948495886036740nt_int
                @ ^ [C4: set_Pr958786334691620121nt_int] :
                  ? [X: product_prod_int_int] :
                    ( ( ratrel @ X @ X )
                    & ( C4
                      = ( collec213857154873943460nt_int @ ( ratrel @ X ) ) ) ) ) ) ) ).

% Abs_rat_cases
thf(fact_6048_Abs__rat__induct,axiom,
    ! [P: rat > $o,X2: rat] :
      ( ! [Y2: set_Pr958786334691620121nt_int] :
          ( ( member2340774599025711042nt_int @ Y2
            @ ( collec5210948495886036740nt_int
              @ ^ [C4: set_Pr958786334691620121nt_int] :
                ? [X: product_prod_int_int] :
                  ( ( ratrel @ X @ X )
                  & ( C4
                    = ( collec213857154873943460nt_int @ ( ratrel @ X ) ) ) ) ) )
         => ( P @ ( abs_rat @ Y2 ) ) )
     => ( P @ X2 ) ) ).

% Abs_rat_induct
thf(fact_6049_int_Odomain,axiom,
    ! [DR1: nat > $o,DR2: nat > $o] :
      ( ( ( domainp_nat_nat
          @ ^ [Y3: nat,Z: nat] : Y3 = Z )
        = DR1 )
     => ( ( ( domainp_nat_nat
            @ ^ [Y3: nat,Z: nat] : Y3 = Z )
          = DR2 )
       => ( ( domain7287725470393535433at_int @ pcr_int )
          = ( basic_570253317919918037at_nat @ DR1 @ DR2 ) ) ) ) ).

% int.domain
thf(fact_6050_Abs__rat__inject,axiom,
    ! [X2: set_Pr958786334691620121nt_int,Y: set_Pr958786334691620121nt_int] :
      ( ( member2340774599025711042nt_int @ X2
        @ ( collec5210948495886036740nt_int
          @ ^ [C4: set_Pr958786334691620121nt_int] :
            ? [X: product_prod_int_int] :
              ( ( ratrel @ X @ X )
              & ( C4
                = ( collec213857154873943460nt_int @ ( ratrel @ X ) ) ) ) ) )
     => ( ( member2340774599025711042nt_int @ Y
          @ ( collec5210948495886036740nt_int
            @ ^ [C4: set_Pr958786334691620121nt_int] :
              ? [X: product_prod_int_int] :
                ( ( ratrel @ X @ X )
                & ( C4
                  = ( collec213857154873943460nt_int @ ( ratrel @ X ) ) ) ) ) )
       => ( ( ( abs_rat @ X2 )
            = ( abs_rat @ Y ) )
          = ( X2 = Y ) ) ) ) ).

% Abs_rat_inject
thf(fact_6051_Abs__rat__inverse,axiom,
    ! [Y: set_Pr958786334691620121nt_int] :
      ( ( member2340774599025711042nt_int @ Y
        @ ( collec5210948495886036740nt_int
          @ ^ [C4: set_Pr958786334691620121nt_int] :
            ? [X: product_prod_int_int] :
              ( ( ratrel @ X @ X )
              & ( C4
                = ( collec213857154873943460nt_int @ ( ratrel @ X ) ) ) ) ) )
     => ( ( rep_rat @ ( abs_rat @ Y ) )
        = Y ) ) ).

% Abs_rat_inverse
thf(fact_6052_type__definition__rat,axiom,
    ( type_d8554052265237484179nt_int @ rep_rat @ abs_rat
    @ ( collec5210948495886036740nt_int
      @ ^ [C4: set_Pr958786334691620121nt_int] :
        ? [X: product_prod_int_int] :
          ( ( ratrel @ X @ X )
          & ( C4
            = ( collec213857154873943460nt_int @ ( ratrel @ X ) ) ) ) ) ) ).

% type_definition_rat
thf(fact_6053_Rep__rat,axiom,
    ! [X2: rat] :
      ( member2340774599025711042nt_int @ ( rep_rat @ X2 )
      @ ( collec5210948495886036740nt_int
        @ ^ [C4: set_Pr958786334691620121nt_int] :
          ? [X: product_prod_int_int] :
            ( ( ratrel @ X @ X )
            & ( C4
              = ( collec213857154873943460nt_int @ ( ratrel @ X ) ) ) ) ) ) ).

% Rep_rat
thf(fact_6054_Rep__rat__cases,axiom,
    ! [Y: set_Pr958786334691620121nt_int] :
      ( ( member2340774599025711042nt_int @ Y
        @ ( collec5210948495886036740nt_int
          @ ^ [C4: set_Pr958786334691620121nt_int] :
            ? [X: product_prod_int_int] :
              ( ( ratrel @ X @ X )
              & ( C4
                = ( collec213857154873943460nt_int @ ( ratrel @ X ) ) ) ) ) )
     => ~ ! [X3: rat] :
            ( Y
           != ( rep_rat @ X3 ) ) ) ).

% Rep_rat_cases
thf(fact_6055_Rep__rat__induct,axiom,
    ! [Y: set_Pr958786334691620121nt_int,P: set_Pr958786334691620121nt_int > $o] :
      ( ( member2340774599025711042nt_int @ Y
        @ ( collec5210948495886036740nt_int
          @ ^ [C4: set_Pr958786334691620121nt_int] :
            ? [X: product_prod_int_int] :
              ( ( ratrel @ X @ X )
              & ( C4
                = ( collec213857154873943460nt_int @ ( ratrel @ X ) ) ) ) ) )
     => ( ! [X3: rat] : ( P @ ( rep_rat @ X3 ) )
       => ( P @ Y ) ) ) ).

% Rep_rat_induct
thf(fact_6056_pcr__int__def,axiom,
    ( pcr_int
    = ( relcom8911704206367525917at_int
      @ ( basic_5328504652464829177at_nat
        @ ^ [Y3: nat,Z: nat] : Y3 = Z
        @ ^ [Y3: nat,Z: nat] : Y3 = Z )
      @ cr_int ) ) ).

% pcr_int_def
thf(fact_6057_int_Opcr__cr__eq,axiom,
    pcr_int = cr_int ).

% int.pcr_cr_eq
thf(fact_6058_cr__int__def,axiom,
    ( cr_int
    = ( ^ [X: product_prod_nat_nat] :
          ( ^ [Y3: int,Z: int] : Y3 = Z
          @ ( abs_Integ @ X ) ) ) ) ).

% cr_int_def
thf(fact_6059_Quotient__int,axiom,
    quotie1194848508323700631at_int @ intrel @ abs_Integ @ rep_Integ @ cr_int ).

% Quotient_int
thf(fact_6060_lcm__code__integer,axiom,
    ( gcd_lcm_Code_integer
    = ( ^ [A2: code_integer,B2: code_integer] : ( divide6298287555418463151nteger @ ( times_3573771949741848930nteger @ ( abs_abs_Code_integer @ A2 ) @ ( abs_abs_Code_integer @ B2 ) ) @ ( gcd_gcd_Code_integer @ A2 @ B2 ) ) ) ) ).

% lcm_code_integer
thf(fact_6061_lcm__0__iff__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ( gcd_lcm_nat @ M @ N )
        = zero_zero_nat )
      = ( ( M = zero_zero_nat )
        | ( N = zero_zero_nat ) ) ) ).

% lcm_0_iff_nat
thf(fact_6062_lcm__0__iff__int,axiom,
    ! [M: int,N: int] :
      ( ( ( gcd_lcm_int @ M @ N )
        = zero_zero_int )
      = ( ( M = zero_zero_int )
        | ( N = zero_zero_int ) ) ) ).

% lcm_0_iff_int
thf(fact_6063_lcm__proj2__if__dvd__nat,axiom,
    ! [X2: nat,Y: nat] :
      ( ( dvd_dvd_nat @ X2 @ Y )
     => ( ( gcd_lcm_nat @ X2 @ Y )
        = Y ) ) ).

% lcm_proj2_if_dvd_nat
thf(fact_6064_lcm__proj1__if__dvd__nat,axiom,
    ! [X2: nat,Y: nat] :
      ( ( dvd_dvd_nat @ X2 @ Y )
     => ( ( gcd_lcm_nat @ Y @ X2 )
        = Y ) ) ).

% lcm_proj1_if_dvd_nat
thf(fact_6065_lcm__proj2__iff__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ( gcd_lcm_nat @ M @ N )
        = N )
      = ( dvd_dvd_nat @ M @ N ) ) ).

% lcm_proj2_iff_nat
thf(fact_6066_lcm__proj1__iff__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ( gcd_lcm_nat @ M @ N )
        = M )
      = ( dvd_dvd_nat @ N @ M ) ) ).

% lcm_proj1_iff_nat
thf(fact_6067_lcm__int__int__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( gcd_lcm_int @ ( semiri1314217659103216013at_int @ M ) @ ( semiri1314217659103216013at_int @ N ) )
      = ( semiri1314217659103216013at_int @ ( gcd_lcm_nat @ M @ N ) ) ) ).

% lcm_int_int_eq
thf(fact_6068_abs__lcm__int,axiom,
    ! [I: int,J: int] :
      ( ( abs_abs_int @ ( gcd_lcm_int @ I @ J ) )
      = ( gcd_lcm_int @ I @ J ) ) ).

% abs_lcm_int
thf(fact_6069_lcm__abs1__int,axiom,
    ! [X2: int,Y: int] :
      ( ( gcd_lcm_int @ ( abs_abs_int @ X2 ) @ Y )
      = ( gcd_lcm_int @ X2 @ Y ) ) ).

% lcm_abs1_int
thf(fact_6070_lcm__abs2__int,axiom,
    ! [X2: int,Y: int] :
      ( ( gcd_lcm_int @ X2 @ ( abs_abs_int @ Y ) )
      = ( gcd_lcm_int @ X2 @ Y ) ) ).

% lcm_abs2_int

% Helper facts (36)
thf(help_If_2_1_If_001t__Int__Oint_T,axiom,
    ! [X2: int,Y: int] :
      ( ( if_int @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Int__Oint_T,axiom,
    ! [X2: int,Y: int] :
      ( ( if_int @ $true @ X2 @ Y )
      = X2 ) ).

thf(help_If_2_1_If_001t__Nat__Onat_T,axiom,
    ! [X2: nat,Y: nat] :
      ( ( if_nat @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Nat__Onat_T,axiom,
    ! [X2: nat,Y: nat] :
      ( ( if_nat @ $true @ X2 @ Y )
      = X2 ) ).

thf(help_If_2_1_If_001t__Num__Onum_T,axiom,
    ! [X2: num,Y: num] :
      ( ( if_num @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Num__Onum_T,axiom,
    ! [X2: num,Y: num] :
      ( ( if_num @ $true @ X2 @ Y )
      = X2 ) ).

thf(help_If_2_1_If_001t__Rat__Orat_T,axiom,
    ! [X2: rat,Y: rat] :
      ( ( if_rat @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Rat__Orat_T,axiom,
    ! [X2: rat,Y: rat] :
      ( ( if_rat @ $true @ X2 @ Y )
      = X2 ) ).

thf(help_fChoice_1_1_fChoice_001t__Int__Oint_T,axiom,
    ! [P: int > $o] :
      ( ( P @ ( fChoice_int @ P ) )
      = ( ? [X5: int] : ( P @ X5 ) ) ) ).

thf(help_fChoice_1_1_fChoice_001t__Nat__Onat_T,axiom,
    ! [P: nat > $o] :
      ( ( P @ ( fChoice_nat @ P ) )
      = ( ? [X5: nat] : ( P @ X5 ) ) ) ).

thf(help_If_2_1_If_001t__Code____Numeral__Ointeger_T,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( if_Code_integer @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Code____Numeral__Ointeger_T,axiom,
    ! [X2: code_integer,Y: code_integer] :
      ( ( if_Code_integer @ $true @ X2 @ Y )
      = X2 ) ).

thf(help_If_2_1_If_001t__Code____Numeral__Onatural_T,axiom,
    ! [X2: code_natural,Y: code_natural] :
      ( ( if_Code_natural @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Code____Numeral__Onatural_T,axiom,
    ! [X2: code_natural,Y: code_natural] :
      ( ( if_Code_natural @ $true @ X2 @ Y )
      = X2 ) ).

thf(help_If_2_1_If_001t__Set__Oset_It__Int__Oint_J_T,axiom,
    ! [X2: set_int,Y: set_int] :
      ( ( if_set_int @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Set__Oset_It__Int__Oint_J_T,axiom,
    ! [X2: set_int,Y: set_int] :
      ( ( if_set_int @ $true @ X2 @ Y )
      = X2 ) ).

thf(help_If_2_1_If_001t__List__Olist_It__Int__Oint_J_T,axiom,
    ! [X2: list_int,Y: list_int] :
      ( ( if_list_int @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__List__Olist_It__Int__Oint_J_T,axiom,
    ! [X2: list_int,Y: list_int] :
      ( ( if_list_int @ $true @ X2 @ Y )
      = X2 ) ).

thf(help_fChoice_1_1_fChoice_001t__Set__Oset_It__Nat__Onat_J_T,axiom,
    ! [P: set_nat > $o] :
      ( ( P @ ( fChoice_set_nat @ P ) )
      = ( ? [X5: set_nat] : ( P @ X5 ) ) ) ).

thf(help_If_2_1_If_001t__Option__Ooption_It__Num__Onum_J_T,axiom,
    ! [X2: option_num,Y: option_num] :
      ( ( if_option_num @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Option__Ooption_It__Num__Onum_J_T,axiom,
    ! [X2: option_num,Y: option_num] :
      ( ( if_option_num @ $true @ X2 @ Y )
      = X2 ) ).

thf(help_If_2_1_If_001t__Heap____Time____Monad__OHeap_Itf__a_J_T,axiom,
    ! [X2: heap_Time_Heap_a,Y: heap_Time_Heap_a] :
      ( ( if_Heap_Time_Heap_a @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Heap____Time____Monad__OHeap_Itf__a_J_T,axiom,
    ! [X2: heap_Time_Heap_a,Y: heap_Time_Heap_a] :
      ( ( if_Heap_Time_Heap_a @ $true @ X2 @ Y )
      = X2 ) ).

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_T,axiom,
    ! [X2: product_prod_int_int,Y: product_prod_int_int] :
      ( ( if_Pro3027730157355071871nt_int @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_T,axiom,
    ! [X2: product_prod_int_int,Y: product_prod_int_int] :
      ( ( if_Pro3027730157355071871nt_int @ $true @ X2 @ Y )
      = X2 ) ).

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [X2: product_prod_nat_nat,Y: product_prod_nat_nat] :
      ( ( if_Pro6206227464963214023at_nat @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [X2: product_prod_nat_nat,Y: product_prod_nat_nat] :
      ( ( if_Pro6206227464963214023at_nat @ $true @ X2 @ Y )
      = X2 ) ).

thf(help_If_2_1_If_001t__Heap____Time____Monad__OHeap_It__Product____Type__Ounit_J_T,axiom,
    ! [X2: heap_T5738788834812785303t_unit,Y: heap_T5738788834812785303t_unit] :
      ( ( if_Hea8138950348631371857t_unit @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Heap____Time____Monad__OHeap_It__Product____Type__Ounit_J_T,axiom,
    ! [X2: heap_T5738788834812785303t_unit,Y: heap_T5738788834812785303t_unit] :
      ( ( if_Hea8138950348631371857t_unit @ $true @ X2 @ Y )
      = X2 ) ).

thf(help_fChoice_1_1_fChoice_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [P: product_prod_nat_nat > $o] :
      ( ( P @ ( fChoic6978938873391328853at_nat @ P ) )
      = ( ? [X5: product_prod_nat_nat] : ( P @ X5 ) ) ) ).

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_Eo_J_T,axiom,
    ! [X2: produc6271795597528267376eger_o,Y: produc6271795597528267376eger_o] :
      ( ( if_Pro5737122678794959658eger_o @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_M_Eo_J_T,axiom,
    ! [X2: produc6271795597528267376eger_o,Y: produc6271795597528267376eger_o] :
      ( ( if_Pro5737122678794959658eger_o @ $true @ X2 @ Y )
      = X2 ) ).

thf(help_fChoice_1_1_fChoice_001t__Set__Oset_It__Product____Type__Oprod_It__Int__Oint_Mt__Int__Oint_J_J_T,axiom,
    ! [P: set_Pr958786334691620121nt_int > $o] :
      ( ( P @ ( fChoic2749331249758569069nt_int @ P ) )
      = ( ? [X5: set_Pr958786334691620121nt_int] : ( P @ X5 ) ) ) ).

thf(help_If_3_1_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_T,axiom,
    ! [P: $o] :
      ( ( P = $true )
      | ( P = $false ) ) ).

thf(help_If_2_1_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_T,axiom,
    ! [X2: produc8923325533196201883nteger,Y: produc8923325533196201883nteger] :
      ( ( if_Pro6119634080678213985nteger @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Product____Type__Oprod_It__Code____Numeral__Ointeger_Mt__Code____Numeral__Ointeger_J_T,axiom,
    ! [X2: produc8923325533196201883nteger,Y: produc8923325533196201883nteger] :
      ( ( if_Pro6119634080678213985nteger @ $true @ X2 @ Y )
      = X2 ) ).

% Conjectures (1)
thf(conj_0,conjecture,
    ( ord_less_eq_nat
    @ ( time_time_a
      @ ( heap_T757603679106148408unit_a @ ( refine_Imp_assert @ p )
        @ ^ [Uu: product_unit] : m )
      @ h )
    @ t ) ).

%------------------------------------------------------------------------------